„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Was verursacht \ "fmt.scanln hat einen neuen Fehler erwartet und wie kann man ihn beheben?

Was verursacht \ "fmt.scanln hat einen neuen Fehler erwartet und wie kann man ihn beheben?

Gepostet am 2025-02-06
Durchsuche:664

What Causes \

fmt.scanln erwartung

Bei Verwendung von fmt.scanln in gO können man auf den Fehler stoßen: "fmt.scanln erwartet Newline." Das Verständnis dieses Fehlers und seiner Auswirkungen ist entscheidend für das Debugieren und Schreiben robuster Code. Aus Standardeingaben, die Neuleitungen als Space -Charaktere behandeln. Dies bedeutet, dass die Eingabe weiter analysiert wird, bis entweder alle Argumente gefüllt sind oder ein Fehler auftritt. Andererseits liest FMT.Scanln auch aus Standardeingaben, erwartet jedoch einen neuen Charakter als Abschlusspunkt. Jede Eingabe danach wird nicht analysiert.

example

im angegebenen Go -Code ergeben sich das Problem, wenn fmt.scanln verwendet wird, um eine Zeichenfolge zu lesen. Die Eingabe enthält einen neuen Charakter, der das Ende der Eingabe für fmt.scanln auslöst. Die nachfolgenden Eingangsfiguren "Jeder liebt Eiscreme" sind jedoch immer noch vorhanden und werden von der nachfolgenden FMT.Scan konsumiert. Dies verursacht den Fehler, wie fmt.scan am Ende der Eingabe eine neue Zeile erwartet. , erwägen Sie die Readstring -Methode von bufio.reader:

importieren "bufio" func main () { Leser: = bufio.newreader (os.stdin) Zeile, err: = reader.readstring ('\ n') }

schlussfolgerung

das unterschiedliche Verhalten von fmt.scan und fmt.scanln ist wichtig, um Fehler zu verhindern und Code zu schreiben, die auf die Erwartungen ausgerichtet sind. Beim Lesen einer Textzeile bieten Alternativen wie bufio.reader und ReadString explizitere und effizientere Lösungen.

Freigabeerklärung Dieser Artikel wird reproduziert unter: 1729685100 Wenn ein Verstoß vorliegt, wenden Sie sich bitte an [email protected], um ihn zu löschen.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3