Pointerübergabe funzt nicht
-
Hallo zusammen!
Ich habe eine Klasse CKiosk, von der mache ich eine Instanz, setze den Kiosknamen und will diesen dann in die nächste Funktion übergeben, um ihn dann dort auszugeben.
Es gibt aber immer eine unhandled exception, und ich weiss nicht wieso.
Ich wäre sehr dankbar für Hilfe.
int starteNeuesSpiel() { CKiosk Kiosk; strcpy("Sepp",Kiosk.kKioskName); datenEinlesen(&Kiosk); return 0; } int datenEinlesen(CKiosk *Kiosk) { cout << "Wie ist dein Name? " << Kiosk->kKioskName; //unhandled exception return 0; }
-
CorDharel schrieb:
strcpy("Sepp",Kiosk.kKioskName);
Du schreibst hier Daten in einen R-Value bzw. const char*. Ich denke mal es sollte eher so aussehen:
strcpy(Kiosk.kKioskName, "Sepp");
Siehe dazu auch http://cppreference.com/stdstring/strcpy.html
Caipi
-
Noch einfacher geht es übrigens mit der Klasse std::string, da kannst du das strcpy weglassen und stattdessen den Zuweisungsoperator benutzen.
-
Oh dann war das Problem ja gar nicht die Pointerübergabe
Danke