Ich entwerfe ein einfaches RPG, nur um mich in C++ - Programmierung zu starten, aber meine else-Anweisung funktioniert nicht, und ich fühle mich mein Code ist sperriger, als es sein sollte. Könnten Sie mir wunderbare Tipps geben, wie ich meinen Code verbessern und die else-Anweisung korrigieren kann? Ich bin mir des "System (" cls ")" Hasses über alles bewusst, aber ich stelle es dort hin, weil es es sauberer aussehen lässt als andere Methoden.C++ Anfänger else Anweisung funktioniert nicht
Ich bin immer noch ein kompletter Anfänger in C++ von der Art und Weise
#include <iostream>
#include <windows.h>
#include <string>
using namespace std;
int save = 0;
int menuinput;
int raceinput;
string race;
int cont1;
int main(void)
{
int save = 0;
int menuinput;
int raceinput;
string race;
int cont1;
cout << "(Insert Generic RPG Name Here) \n";
if (save == 1){
cout << "Main Menu\n";
cout << "[1.] Continue\n";
cout << "[2.] New Game\n";
cout << "[3.] Options\n";
cin >> menuinput;
}
if (save == 0){
cout << "Main Menu\n";
cout << "[1.] New Game\n";
cout << "[2.] Options\n";
cin >> menuinput;
system("cls");
}
if (menuinput == 1)
{
cout << "Please select your race\n";
cout << "[1.] Human\n";
cout << "[2.] Elf\n";
cout << "[3.] Dwarf\n";
cout << "[4.] Orc\n";
cin >> raceinput;
if (raceinput == 1){
race = "Human";
cont1 = 1;
}
if (raceinput == 2){
race = "Elf";
cont1 = 1;
}
if (raceinput == 3){
race = "Dwarf";
cont1 = 1;
}
if (raceinput == 4){
race = "Orc";
cont1 = 1;
}
else {
system("cls");
cout << "Invalid Input, please try again.";
Sleep(1000);
main();
}
if (cont1 = 1){
system("cls");
cout << race;
cin >> race;
}
else
{
system("cls");
cout << "Invalid Input, please try again.";
Sleep(10000);
main();
}
}
}
EDIT: Um es zu wiederholen, wenn ich versuche, die erste else-Anweisung zu verwenden (wobei das Hauptmenü vorhanden ist) die sonst Anweisung wird nicht aktiviert und beendet das Programm sofort. Die Else-Anweisung wird nicht angezeigt. Und in der zweiten else-Anweisung, die else-Anweisung Nachricht zeigt, aber die Sleep-Funktion nicht funktioniert, zeigt es für etwa eine halbe Millisekunde dann verschwindet.
"funktioniert nicht" ist keine nützliche Problembeschreibung. –
@SamVarshavchik hinzuzufügen, was ist wirklich das Problem? Was genau funktioniert * nicht wie gewünscht? – Li357
Sie rufen 'main()' in 'main()' auf. Bevor Sie fortfahren, werfen Sie bitte einen Blick auf: http://stackoverflow.com/questions/2532912/call-main-itself-in-c. –