Ich bin ein Anfänger lernen C und versuchen, den folgenden Code aus einem Online-Vortrag zu verstehen. Es scannt eine Zeichenfolge nach einer Ganzzahl; Wenn Zeichen gefunden werden, schlägt der sscanf fehl.sscanf Verhalten/Rückgabewert
Ich habe die man-Seiten für sscanf gelesen und bin immer noch verwirrt über die Überprüfung des Rückgabewerts und warum dieser Code funktioniert. Sie geben an, dass "diese Funktionen die Anzahl der zugewiesenen Eingabeelemente zurückgeben".
Wenn sscanf nur auf Zeichen stößt, schreibt es sie in & c ... aber in diesem Fall wurde & n nicht geschrieben. In diesem Fall hätte ich gedacht, dass der Rückgabewert von sscanf immer noch 1 wäre?
'sscanf' wird nicht über die'% d' überspringen, um die '% c' zu essen. Wenn es zuerst keine Nummer trifft, gibt es 0 zurück. –
Aus irgendeinem Grund entging mir die Tatsache, dass sscanf strikt in der Reihenfolge (pro Formatzeichenkette) tat, völlig. Vielen Dank! – drjimmie1976