jw013 weist in einer anderen Antwort darauf hin, dass Mac jetzt auf den * nix-Standard umgestellt hat \n
.
Zuvor war Mac OS \r
(Wagenrücklauf, 13 / 0x0D); Windows ist \r\n
und * nix sind \n
(Zeilenvorschub, 10 / 0x0A). Ich bin mir nicht sicher für die dunkeleren Systeme, aber ich würde vermuten, dass fast alles andere auch so ist \n
. Der Unterschied ergibt sich aus den Tagen des Teletyps, an denen \n
in die nächste Zeile gewechselt wurde und \r
der Kopf zum Anfang (linke Seite) der Seite zurückbewegt wurde, ähnlich wie bei einer manuellen Schreibmaschine (manuell) der Tag. Beachten Sie, dass in einem Terminal unter Linux \r
der Cursor immer noch an den Anfang der aktuellen Zeile bewegt wird, anstatt in die nächste Zeile zu wechseln, was der Verwendung des Teletyps entspricht. Ich habe detailliertere Historien darüber gesehen, warum jedes System seine eigenen Leitungstypen ausgewählt hat, daher bin ich sicher, dass Sie nach weiteren Details suchen können.
In der Praxis können die meisten Redakteure (mit Ausnahme des Notizblocks) mit jedem der drei Typen umgehen, und es gibt zahlreiche Möglichkeiten, zwischen ihnen zu konvertieren. Einige Remote-Kopiertools (z. B. FTP und wahrscheinlich andere ähnliche Programme) konvertieren beim Transportieren von Dateien im Textmodus sogar transparent in die richtigen Zeilentypen für das Ziel. Und ich habe heute in einem SO-Beitrag 1 gelesen, dass gcc tatsächlich \n
in das entsprechende Zeilenende für das System konvertiert, auf dem es kompiliert wird.
¹ Zitat:
Die unterschiedlichen Zeichen am Zeilenende spielen keine Rolle, vorausgesetzt, die Datei ist im Textmodus geöffnet. Dies erhalten Sie, wenn Sie nicht nach Binärdateien fragen. Das kompilierte Programm schreibt das Richtige für das kompilierte System aus.
0x0A
=10
ist nicht dasselbe wie0x10
=16
. Das Gleiche gilt, wenn man0x13
nicht dasselbe ist wie0x0D
.