do-while-Schleife
-
Hallo,
Wollte in mein kleines Programm eine kleine Abfrage integrieren, die abfragt ob das Ganze nochmals ausgeführt werden soll. Realisiert habe ich das mit einer do-while Schleife:
int main(void) { double G, L, J; int erg; char ch; do { ........ ........ //Wiederholungsabfrage printf("\nNochmal (J/N)?: "); fflush(stdin); scanf("%c", &ch); } while(ch== 'J' || ch == 'j'); return 0; }
funktioniert unter Windows, aber unter MacOS nicht.
Erstmal warum funktioniert es unter MacOS nicht und welches Pendant gibt es dazu?Viele Grüße
-
Hier im Forum sind Alternativen zu:
fflush(stdin);
beschrieben.
Laut C-Standard undefiniert.
Laut MSDN eine Ergänzung des C-Standards bei Microsoft-Compilern.Da du beim MacOS wahrscheinlich mit einem Compiler, der das nicht unterstützt arbeitest => undefiniertes Verhalten.
MfG f.-th.
-