Also ich hab mir ein lustiges Programm geschrieben und da gibt es eine Passage mit einer While-Schleife und beim zweiten Durchlauf irgnoriert das Prog eine EingabeZeile...
Code:
j = 1;
system("cls");
while (j != 16){
cout << j << ". Spiel:" << endl;
std::getline( cin, name); <------ eine der beiden...
std::getline( cin,name1); <----- ...wird übergangen
cout << "Klappt" << endl; <---- Debug-Ausgabe
for (i = 0; i < 2; i++){
ergebnis[i] = getErgebnis();
}
if (ergebnis[0] < ergebnis[1]){
list = setSpiel(list, name, ergebnis[0], ergebnis[1], 0, (ergebnis[0]-ergebnis[1]));
list = setSpiel(list, name1, ergebnis[1], ergebnis[0], 3, (ergebnis[1]-ergebnis[0]));
}
if (ergebnis[0] == ergebnis[1]){
list = setSpiel(list, name, ergebnis[0], ergebnis[0], 1, 0);
list = setSpiel(list, name1, ergebnis[1], ergebnis[1], 1, 0);
}
if (ergebnis[0] > ergebnis[1]){
list = setSpiel(list, name, ergebnis[0], ergebnis[1], 3, (ergebnis[0]-ergebnis[1]));
list = setSpiel(list, name1, ergebnis[1], ergebnis[0], 0, (ergebnis[1]-ergebnis[0]));
}
}
list = setWertung(list);
list = sort(list);
return list;
} Was die einzelnen Funktionen (sort,setSpiel, setWertung) im Detail machen ist erstmal wurst. SO ich lass die Schleife das erste Mal laufen, dann kommt nach der zweiten Eingabe "Klappt" -> meine Debug-Ausgabe. Dann geb ich noch mal 2 Ints ein und dann kommt der zweite Schleifendurchlauf. Und da kommt schon nach der ERSTEN Eingabe "klappt"...-> also muss doch eine der beiden Eingabe-Zeilen übergangen worden sein..Aber ich kann mir nicht erklären warum? Jemand der sich das kann?