Die „richtige“ Ausgabe in diesem Fall ist \nhai\bas\rha\n
, genau wie Sie es printf
geliefert, mit \n
, \b
und \r
für die entsprechenden Sonderzeichen (oder Zeichenkombinationen) stehen.
Aber wie diese Ausgabe auf einem bestimmten Ausgabegerät aussieht, hängt von den Eigenschaften und Fähigkeiten dieses Geräts ab. Es passiert einfach, dass das von Ihrem Online-Compiler verwendete (simulierte) Ausgabegerät diese Sequenz als haiasha
anzeigt.
Es scheint, dass Ihre Erwartungen auf dem Verhalten eines "typischen" Bildschirmterminals basieren. Unterdessen geben Online-Compiler nichts direkt an irgendein "Display" aus. Sie fangen die Standardausgabe ab und verarbeiten sie anschließend zur Darstellung auf einer Webseite weiter. Was Sie sehen, ist das Ergebnis dieser Nachbearbeitung.
Es hängt davon ab, wie das Standardausgabegerät auf Backspace- und Return-Zeichen reagiert, nicht auf den Compiler. Die Ausgabe ist eigentlich eine Folge von Zeichen "\ n", "h", "a", "i", "b" usw. (dh 11 Zeichen), unabhängig davon, ob Sie sehen Sie alle auf dem bestimmten Ausgabegerät. – Peter
'int main()'. Nur 'main()' ist nicht mehr gültig. – AnT