variable als text (nicht int, ...)



  • hallo.
    momentan habe ich meine "deinName"variable auf char deinName [250]; gestellt.
    das habe ich auch gefunden:

    #include <iostream>
    #include <string>
    using namespace std;
    
    void main()
    {
       string name;
       cout<<"Wie heissen Sie? ";
       cin>>name;
       cout<<"Hallo, "<<name<<'!'<<endl;
    };
    

    funktioniert aber nicht - wieso?



  • Funktioniert nicht ist immernoch keine ausreichende Fehlerbeschreibung...

    EDIT:
    Wenn ich den Rückgabewert für main korrigiere funzts wunderbar.



  • er erkennt scheinbar nicht dass string ein typ sein soll. char geht, int geht, aber string nicht. das einzige was er sagt, ist undefined variable. string wird auch nicht wie char oder so farblich hervorgehoben...

    EDIT: und was hast du korrigiert? bei mir geht es weder mit int noch mit void



  • bin auch n neuling aber ich denk so müsste es klappen..

    #include <iostream>
    #include <string>
    using namespace std;

    int main()
    {
    char name[30]; //29 buchstaben darf der
    //name höchstens lang sein.., kannst du versellen
    cout << "Wie heissen Sie? ";
    cin >> name;
    cout << "Hallo, "<< name << "!" <<endl;

    return 0;
    }



  • //M2k schrieb:

    er erkennt scheinbar nicht dass string ein typ sein soll. char geht, int geht, aber string nicht. das einzige was er sagt, ist undefined variable. string wird auch nicht wie char oder so farblich hervorgehoben...

    EDIT: und was hast du korrigiert? bei mir geht es weder mit int noch mit void

    Er meinte eine Fehlermeldung, also die Compilerausgabe.

    So funktioniert es einwandfrei:

    #include <iostream>
    
    int main() {
        using namespace std;
        string Name;
        cout << "Name: ";
        cin >> Name;
        cout << "Hallo " << Name << "!" << endl;
    	return 0;
    }
    

    @omarius
    Ja, das geht auch, allerdings brauchst du dann string nicht mehr inkludieren und dann hast du halt auch das Problem dass es eine Begrenzung gibt.

    mfg.



  • @joomoo:
    Ja, omarius muss string nicht inkludieren, aber du. 😉

    @//M2k:
    Welchen Compiler bzw. welche IDE verwendest du? Wenn du in Windows arbeitest würde ich dir Visual Studio C++ 2005 Express empfehlen. Damit wird dein Programm auf jedenfall funktionieren.
    Des Weiteren brauchst du nach einer Funktion kein ';' machen. 🙂



  • Vellas schrieb:

    @joomoo:
    Ja, omarius muss string nicht inkludieren, aber du. 😉

    Jo stimmt. Aber irgent wie macht mir das Code::Blocks immer automatisch. Das find ich scheiße, weiß jemand wo man das ausstellen kann?

    mfg.



  • Das geht glaube ich nicht. Das haben die Entwickler wohl irgendwo inkludiert. Solltest dich aber nicht drauf verlassen, ansonsten, wenn es dich stört kann ich dir VS 2005 empfehlen. 🙂



  • joomoo schrieb:

    Vellas schrieb:

    @joomoo:
    Ja, omarius muss string nicht inkludieren, aber du. 😉

    Jo stimmt. Aber irgent wie macht mir das Code::Blocks immer automatisch. Das find ich scheiße, weiß jemand wo man das ausstellen kann?

    mfg.

    Was macht es dir automatisch?



  • Vellas schrieb:

    Das geht glaube ich nicht. Das haben die Entwickler wohl irgendwo inkludiert. Solltest dich aber nicht drauf verlassen, ansonsten, wenn es dich stört kann ich dir VS 2005 empfehlen. 🙂

    Ne, ich bleib schon bei CodeBlocks. Aber das kann man bestimmt irgentwo einstellen.

    mfg.



  • Michael E. schrieb:

    joomoo schrieb:

    Vellas schrieb:

    @joomoo:
    Ja, omarius muss string nicht inkludieren, aber du. 😉

    Jo stimmt. Aber irgent wie macht mir das Code::Blocks immer automatisch. Das find ich scheiße, weiß jemand wo man das ausstellen kann?

    mfg.

    Was macht es dir automatisch?

    Ich glaube der inkludiert mir die string Headerdatei automatisch wenn ich string in meinem Code benutze.

    mfg.



  • Ich glaub eher, daß iostream string intern schon mit einbindet. Da man sich da allerdings nicht drauf verlassen sollte (ist schließlich so nicht vorgeschrieben) sollte man string immer brav mit einbinden, wenn man es benutzt.


Anmelden zum Antworten