Dester Opublikowano 28 Lutego 2015 Opublikowano 28 Lutego 2015 Wygląda na to, że nie mam dobrych pomysłów na nazwy tematów... Do rzeczy. W poniższym kodzie pozmieniałem tylko napisy wyświetlane przez cout, bo nie chciałem pokazywać jaki tworzę program. Reszta jest bez zmian. GML int main(int argc, char** argv) { string choice; string name; system("COLOR 0A"); /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// cout<<"IMIE: "; cin>>name; system("cls"); /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// cout<<"> cfff, "; cout<<name; cout<<"!"<< endl; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// choose: cout<<"> Wybierz opcje:"<<endl<<"a1 b1 c1"<<endl; cout<<"< "; cin>>choice; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if(choice=="c1") { return 0; } /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if(choice=="a1"){ cout<<"> gffhggfgffg"<<endl; goto PC; } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if(choice=="b1"){ cout<<"> abcdef"<<endl; goto choose; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// }else{ cout<<"> hjjhjhjhhj."<<endl; choice=""; goto choose; } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// PC: system("PAUSE"); return 0; } Chodzi mi o to,że kiedy wpiszę "a1" program zamiast wyświetlić "> gffhggfgffg" wyświetla "> hjjhjhjhhj.", cofa się do "choose:", znów wyświetla "> hjjhjhjhhj."i cofa się do "choose:". Tak samo jest przy wpisaniu "b1". "c1" działa normalnie. Z góry dziękuję za pomoc. PS: Tak, wiem że to szablon do wpisywania GML a nie C++.
Sutikku Opublikowano 28 Lutego 2015 Opublikowano 28 Lutego 2015 Osobiście nie wiem w czym problem, może czyść bufor, czy coś, ale nie lepiej użyć switch()...case ?
Dester Opublikowano 12 Marca 2015 Autor Opublikowano 12 Marca 2015 Osobiście nie wiem w czym problem, może czyść bufor, czy coś, ale nie lepiej użyć switch()...case ? Spróbuję, dzięki.
Lechu4444 Opublikowano 12 Marca 2015 Opublikowano 12 Marca 2015 goto to gówno równie dobrze można by napisać ten program bez niego stosując pętle while, bądź do while i switcha. :) Ale co do niekończącej się pętli możesz spróbować z cin.clear(); cin.sync();
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się