Wie kann ich sicherstellen, dass der Puffer genau das ist, was ich wollte?

9

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.

    
madasionka 08.05.2016, 17:09
quelle

1 Antwort

2

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.

%Vor%

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.

    
Weather Vane 08.05.2016, 17:31
quelle

Tags und Links