the variable chspielmode is being used without being initialized
-
Hi,
ich habe gerade erst angefangen zu programmieren und bin auch neu in diesem Forum (ich hoffe das ist der richtige Bereich für mein Thema). Ich habe eine Fehlermeldung bekommen, mit der ich nichts anzufangen weiß: "Run-Time Check Failure #3 - The variable chspielmode is being used without being initialized". Die kommt leider erst wenn ich das Programm starte, es passiert wenn ich 1 Player oder 0 angebe. Hier mein Code:#include <iostream> using namespace std; //Hauptprogramm int main () { //Variablen int spieleranzahl; char chspielmode; //Spieleranzahl eingeben lassen cout << "Wie viele Spieler? " << endl; cin >> spieleranzahl; //Spieleranzahl ungültig if (spieleranzahl == 0) cout << "Falsche Eingabe, bitte neustarten!" << endl; //Spierleranzahl 1 else if (spieleranzahl == 1) cout << "Spiel gegen den Computer\n"; //Spieleranzahl mehr als 1 else { cout << "Multiplayerspiel\n"; cout << "(t)eamspiel oder (f)ree for all?\n"; cin >> chspielmode; } //Teamspiel if (chspielmode == 't') cout << "Teamspiel, Spiel wird geladen...\a\n"; //Free for All else if (chspielmode == 'f') cout << "Free for All, Spiel wird geladen...\a\n"; //Falsche Eingabe else cout << "Falsche Eingabe, bitte neustarten" << endl; return 0; }
Ich hoffe ihr könnt mir helfen.
LG/edit pumuckl: bb-codes und damit cpp-tags aktiviert
-
Hi,
du solltest deine Englischkenntisse auffrischen.
Die Fehlermeldung sagt doch sehr genau, was nicht passt:'chspielmode' wird benutzt, ohne das sie vorher initialisiert wurde.
Das liegt daran, dass das Programm nicht zwingend diesen Teilelse { cout << "Multiplayerspiel\n"; cout << "(t)eamspiel oder (f)ree for all?\n"; cin >> chspielmode; }
durchläuft und chspielmode sonst nicht gesetzt wird.
-
Achso, danke, ich hab das nicht gesehen, ich musste eine Verschachtelung machen, ist mir jetzt dadurch aufgefallen, tut mir leid^^ ich bin noch Anfänger und hab nich dran gedacht :(. Vielen Dank!