Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

getch() a system("pause"), co wybrać?

Ostatnio zmodyfikowano 2009-07-14 11:47
Autor Wiadomość
GoldWolf
Temat założony przez niniejszego użytkownika
» 2009-07-13 19:38:01
Natknąłem się na mały problem jednak chcą stosować to rozwiązanie:

C/C++
#include <iostream>
int main()
{
    using namespace std;
    const short ROZMIAR = 50;
    char ciag_znak[ ROZMIAR ];
    char lancuch[ ROZMIAR ];
   
    cout << "Podaj swoje imie i nazwisko"
    << endl;
    /*składnia getline gdzie kopiować, oraz ile znaków
    skopiować*/
    cin.getline( ciag_znak, ROZMIAR );
    cout << "Nazywasz sie: " << ciag_znak
    << endl
    << "Teraz wszystko jest OK !\n";
   
    cout << "\nPodaj swoje 2 imiona ";
    //składnia get jest identyczna jak getline
    cin.get( ciag_znak, ROZMIAR );
    cout << "Podaj swoje nazwisko ";
    cin.get( lancuch, ROZMIAR );
    cout << endl << endl;
   
    cout << "Nazywasz sie : " << ciag_znak
    << " " << lancuch << endl;
    cout << "Co jest grane ? Nie masz nazwiska!?!\n";
   
    cin.sync();
    cin.get();
    return( 0 );
}

Co chyba eliminuje to rozwiązanie. Co ciekawe nie zadziała również getchar(); ;-)
P-8505
WinerFresh
» 2009-07-13 20:07:12
po to masz właśnie cin.sync(); by nie było takich kwiatków
P-8508
GoldWolf
Temat założony przez niniejszego użytkownika
» 2009-07-13 20:09:04
Ale nie działa...
P-8509
WinerFresh
» 2009-07-13 20:11:58
bo go nie powstawiałeś DODATKOWO tam gdzie trzeba.
P-8510
GoldWolf
Temat założony przez niniejszego użytkownika
» 2009-07-13 20:45:47
Czyli jakbym użył kilkunastu takich wywołań to bym musiał DODATKOWO kilkanaście razy wrzucać sync();, a akurat nie o to mi chodzi.

Znalazłem prostsze rozwiązanie, ale ogólnie raczej na razie zostanę przy conio.h.
C/C++
cin.clear();
cin.sync();
cin.get();
P-8511
GoldWolf
Temat założony przez niniejszego użytkownika
» 2009-07-13 21:20:16
Możesz napisać coś więcej na ten temat, na tym to właśnie ma polegać, by wychwycić błąd.
Jednak najpierw błąd muszę pokazać.
P-8516
GoldWolf
Temat założony przez niniejszego użytkownika
» 2009-07-14 07:09:57
Jednak eliminuje to wykorzystanie wspomnianych rozwiązań do zatrzymania aplikacji, ponieważ gdy coś się sypnie ze strumieniem aplikacja nie zatrzyma się. Więc albo system("pause") albo getch(), ew napisanie własnej funkcji(jednak nie o to chodzi).
P-8529
GoldWolf
Temat założony przez niniejszego użytkownika
» 2009-07-14 16:30:50
Tak tylko to nie są cywilizowane programy, gdzie wszystko jest cacy. To są przykłady, a często przykłady muszą zawierać błędy, dodatkowo może się zdarzyć, że ktoś wymyśli sobie jakiś kod bardziej zakręcony i zwiększa liczbą błędów.
Ja potrzebuje prosty(by nie napisać banalny) sposób na zatrzymanie programu w każdej sytuacji, w której kompilator nie wykrył błędu. Mówię tu o programach, które może stworzyć początkujący.

END
P-8536
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona