Odliczanie dwóch czasów w tym samym momencie
Ostatnio zmodyfikowano 2017-08-04 10:29
polakpl Temat założony przez niniejszego użytkownika |
» 2017-08-03 23:55:31 Teraz jest prawie wszystko ok, ale co zrobić z tym? { x = i / 60; system( "cls" ); cout << "Minelo " << x << " minut" << endl; cout << "Wpisz 1 aby odliczyc 20 minut" << endl; wybor = getch(); switch( wybor ) {
po odpaleniu programu i wciśnięciu enteru, trzeba wciskać enter żeby płynął czas, co zrobić żeby program czuwał aż wcisnę enter? bo tak to mi zatrzymuje cały skrypt |
|
pekfos |
» 2017-08-03 23:56:03 No a zgadnij. get character. co zrobić żeby program czuwał aż wcisnę enter? |
Poczytaj o kbhit(). |
|
Kinexity |
» 2017-08-04 00:04:17 Pewnie masz rację. Kiedyś zasugerował mnie takie fragment z tutejszego rozdziału o conio.h:
"W tym miejscu wiele książek przytacza całą długą listę kodów znaków, które mają poinformować Cię jaki kod znaku za jaki klawisz odpowiada. Moim zdaniem takie podejście do poważnego przyszłego programisty jest absurdalne i lekceważące. Każdy programista powinien sobie sam bez większych problemów sprawdzić jaki kod znaku stanowi dany klawisz."
Ten fragment zasugerował mnie, że kody klawiszy i znaki chodzą swoimi drogami |
|
pekfos |
» 2017-08-04 00:11:38 Nie ma znaku, który odpowiada klawiszowi end, czy page up ale te klawisze wciąż generują jakieś znaki w getch(), w części przypadków nawet 2 kody naraz. Kody klawiszy znaków pokrywają się z kodami ASCII tych znaków. Jest też coś takiego jak keyboard scan code i to jest zupełnie co innego od kodów znaków, przez co pozwala na rozróżnienie, czy '1' zostało naciśnięte klawiszem 1/!, czy klawiszem 1/end na klawiaturze numerycznej. |
|
polakpl Temat założony przez niniejszego użytkownika |
» 2017-08-04 00:31:32 nie wiem jak ta funkcja khbit ma mi pomóc, potrzebuję tak przerobić kod żeby płynął czas i jednocześnie czekał na enter |
|
latajacaryba |
» 2017-08-04 00:52:42 Po każdym sleep sprawdzasz czy został wciśnięty jakiś klawisz. Jeśli tak, sprawdzasz czy to enter. |
|
polakpl Temat założony przez niniejszego użytkownika |
» 2017-08-04 10:29:51 już wszystko działa. Użyłem funkcji khbit if( kbhit() ) { getch(); {
|
|
1 « 2 » |