do - while Problem Kategorie: Programmierung C (von Hannes - 3.04.2006 9:30) | ||
| ||
Hallo, möchte mit der 12er-Tastatur einen oder mehrere Parameter einlesen (z.B. stellen der Uhrzeit). Es soll die do-Schleife solange durchlaufen werden, bis eine Taste gedrückt wurde. Wenn keine Taste gedrückt wird ist der Rückgabewert -1 und somit müsste while(key_ch==-1) die Schleife immer durchlaufen, tut sie aber nur 1x. while(0) do-Anweisung wird 1x durchlaufen = ok while(1) do-Anweisung wird endlos durchlaufen = ok while(key_ch) do-Anweisung wird endlos durchlaufen auch wenn man Taste 0 drückt Ist mein Programm korrekt???? Danke _____________________________________________________________ word key_in; char key_ch, std_z; void main(void) { std_z=0; Key_Init(); std_z=key_input(); Msg_WriteChar(0x20); Msg_WriteChar(std_z); while(1); } char key_input(void) { do { key_ch=-1; key_in=Key_Scan(); if (key_in != 0) key_ch=Key_TranslateKey(key_in); AbsDelay(200); Msg_WriteChar(key_ch); } while(key_ch == -1); return key_ch; } | ||
Antwort schreiben Antworten: ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum