Ich versuche, eine ganzzahlige Eingabe zu erhalten, und ich versuchte die elementarste Methode, die ich finden konnte. Immer, wenn etwas keine Ganzzahl ist, bleibt es in einer Endlosschleife stecken. Ich glaube, das liegt an der Fgets-Funktion. Ich habe ein paar Lösungen ausprobiert, die ich auf dieser Seite gefunden habe, aber keine funktionierte. Der Code ist alsStuck in unendlich fgets Schleife
int getint()
{
int number;
char input[4];
fgets(input, 4, stdin);
while (atoi(input) < 0 || (strcmp(input, "0") != 0 && atoi(input) == 0))
printf("Insert a non negative number: ");
fgets(input, 4, stdin);
number = atoi(input);
printf("%d\n", number);
return number;
}
Einrückungen nicht kontrolliert fließen zu lassen. –
Sie müssen Klammern für mehrzeilige Codeblöcke haben. – Li357
@KerrekSB Python und Lua scheinen undicht zu sein. – EOF