Ich schrieb das folgende Programm in das C und als ich es ausführte, war ich überrascht von der Ausgabe.
Hier ist das Programm
%Vor%Die Ausgabe ist: - hai während ich "absiha" erwartet habe, da \ n für eine neue Zeile ist, \ b ist für die Rücktaste (nicht löschbar) und \ r ist für den Wagenrücklauf. Also habe ich erwartet, dass curson bei "i" Charakter sein würde, weil \ r angewendet worden ist, aber wenn ich es laufen lasse und die Ausgabe sehe, war ich total überrascht und verwirrt. Kann mir bitte jemand die Ausgabe erklären?
Gehen wir Schritt für Schritt vor:
<new line>ab<backspace>si<carriage return>ha
Behandeln Sie zuerst die Rücktaste. Beachten Sie, dass das nächste Zeichen, das ausgegeben werden soll, überschreibt, obwohl es "nicht löschbar" ist, was rückgestrichen wurde:
<new line>asi<carriage return>ha
Ein Wagenrücklauf bedeutet nun, zum Anfang der Zeile zurückzukehren. Also überschreibt das "ha" das "as" in "asi:
<new line>hai
Der Cursor sitzt jetzt auf i
, sodass das nächste auszugebende Zeichen i
überschreiben würde.
Besuchen Sie Ссылка
Escape Sequence Character
\a Bell (speaker beeps)
\b Backspace (non-erase)
\f Form feed/clear screen
\n New line
\r Carriage Return
\t Tab
\v Vertical tab
\ Backslash
\? Question mark
\' Single quote
\" Double quote
\xnn Hexadecimal character code nn
\onn Octal character code nn
\nn Octal character code nn
Tags und Links c language-lawyer