Frage von Luca35xy, 16

C - buchstaben und andere zeichen als ungültig deklarieren?

abend zusammen! ich fasse kurz: ich soll einen code schreiben, der einfach werte einliest und dann den jeweiligen "zustand" ausgibt. sobald man allerdings buchstaben oder andere zeichen eingibt, soll eine fehlermeldung kommen, dass nur zahlen zulässig wären. ich selbst hab es irgendwie (im code zusehen) mit einer if anweisung probiert, hat aber natürlich nicht funktioniert. mir wurde gesagt ich solle es irgendwie mit if else oder mit default probieren, genauer erklären konnte es mir aber keiner mehr (default hab ich bisher noch nie gehört/probiert, aber soweit ich das jetzt nachgelesen habe, kann es damit sowieso nicht funktionieren). könnte mir jemand einen tipp geben oder erklären, was ich da noch in meinen code hineinschreiben muss? hier der link zum screenshot von meinem code: https://puu.sh/sr66u/4f214adfce.png

Antwort
von softie1962, 7

nimm doch statt scanf

char buffer[ 128 ];
gets( buffer );
s=atoi( buffer );

Wurden Buchstaben eingegeben, so ist der Wert s = 0;

Kommentar von Luca35xy ,

hey, danke für deine antwort! ich habe noch nie von diesen anweisungen gehört und durchs googleln wurde ich auch nicht wirklich schlauer. hab es jetzt anstatt scanf benutzt (hoffentlich richtig), doch es kommt doch aufs im endeffekt aufs gleiche raus, oder? davor wurde mir "niedriger blutdruck" bei einem buchstaben ausgegeben und jetzt, weil der wert = 0 ist, ja genauso, nur darauf sollte es eigentlich nicht hinauslaufen. hab ich was falsch eingefügt, oder sollte es dann eh genauso sein? 

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten