Ich möchte eine Zeile scannen und sicherstellen, dass es nicht mehr gibt, als ich wollte. Der Code sieht so aus:
%Vor%Wenn ich eine Eingabe wie:
bekomme %Vor%alles ist in Ordnung, aber dann eine Eingabe wie folgt
%Vor%wird ebenfalls akzeptiert. Ich dachte, wenn ich "\ n" hinzufügen würde alles gut funktionieren, da ich weiß, dass jede Eingabezeile mit einem EOL endet, aber es nicht.
So etwas könnte es tun, wenn Ihre Eingabe am Ende immer einen Zeilenumbruch enthält. Der Code erfordert einen zusätzlichen char
-Typ und prüft, ob es \n
ist, sowie die korrekte Anzahl der gescannten Elemente. Es druckt 1
für Erfolg - eine leichte Abweichung zu Ihrer Funktion für den Zweck dieses Beispiels.
Programmsitzungen über die Tastatur:
%Vor% Beachten Sie, dass es vor %c
kein Leerzeichen gibt, was dazu führen würde, dass Whitespaces übersprungen werden, was den Punkt, an dem Sie es haben, vereitelt.