Forum: PC-Programmierung \n Wert, neue Zeile


von Peter (Gast)


Lesenswert?

Hallo Leute,

welchen Wert hat \n ( neue Zeile Zeichen, verwendet im string) ?
ist \n = NULL ?

von Erwin D. (Gast)


Lesenswert?


von ge-nka (Gast)


Lesenswert?

https://de.wikipedia.org/wiki/Zeilenumbruch

Betriebssystem; Zeichensatz; Abkürzung; Code Hex;Code Dezimal; 
Escape-Sequenz;

Unix, Linux, Android, Mac OS X, AmigaOS, BSD, weitere; ASCII; LF;  0A; 
10; \n;

Windows, DOS, OS/2, CP/M, TOS (Atari); ASCII; CR LF; 0D 0A; 13 10;\r\n;

von Georg A. (georga)


Lesenswert?


von imonbln (Gast)


Lesenswert?

Peter schrieb:
> welchen Wert hat \n ( neue Zeile Zeichen, verwendet im string) ?
> ist \n = NULL ?

Nein '\n' = NULL stimmt so gut wie Nie. Meistens hat '\n' = 0x0a aber,
das kommt auf mehere faktoren an. die Programmiersprache welche 
verwendet wird oder das verwendete OS/CPU und so weiter.

Generell, habe ich bei solchen Fragen meistens ein ungutes Gefühl, die 
meisten, die solche Fragen stellen sind auf dem besten Weg sich in den 
Fuss zu schießen, weil Sie etwas "clevers" machen wollen, dass Ihnen 
dann irgendwan wie ein Bumerang um die Ohren fliegt.

Also bitte, nicht damit Coden, egal wie Sicher du dir bist, das es 
Richtig ist. Lass dein "System" die Steuerzeichen verwalten, das geht 
immer und ist portable und Wartbar.

von guest (Gast)


Lesenswert?

imonbln schrieb:
> Nein '\n' = NULL stimmt so gut wie Nie. Meistens hat '\n' = 0x0a aber,
> das kommt auf mehere faktoren an. die Programmiersprache welche
> verwendet wird oder das verwendete OS/CPU und so weiter.

Und bei der Programmiersprache u.U. auch noch welche Funktion wie 
benutzt wird.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Das Zeichen '\n' steht in C, Java, Python, Haskell und vielen anderen
Programmiersprachen für "new line". Auf Plattformen, die die ASCII- oder
eine dazu abwärtskompatible Zeichencodierung  wie bspw. ISO 8859 oder
UTF-8 verwenden (also auf fast allen), ist der zugehörige dezimale
Zeichencode 10.

Oft wird dieses Zeichen aber bei der Ausgabe betriebssystemspezifisch in
ein anderes Zeichen oder eine Kombination mehrerer Zeichen konvertiert.

von Rolf M. (rmagnus)


Lesenswert?

Yalu X. schrieb:
> Oft wird dieses Zeichen aber bei der Ausgabe betriebssystemspezifisch in
> ein anderes Zeichen oder eine Kombination mehrerer Zeichen konvertiert.

Und in der Hinsicht verhalten sich z.B. Linux, MacOS und Windows alle 
drei unterschiedlich. Weiterhin ist es ggf. noch abhängig davon, ob der 
Ausgabestream im Text- oder im Binärmodus geöffnet wurde.

von Dirk D. (dicky_d)


Lesenswert?

Rolf M. schrieb:
> Und in der Hinsicht verhalten sich z.B. Linux, MacOS und Windows alle
> drei unterschiedlich.
Aber nur bis MAC OS <=9, ab OSX ist's auch \n.

von S. R. (svenska)


Lesenswert?

Dirk D. schrieb:
>> Und in der Hinsicht verhalten sich z.B. Linux, MacOS und Windows alle
>> drei unterschiedlich.
> Aber nur bis MAC OS <=9, ab OSX ist's auch \n.

Fun Fact:
Eine Datei, im Textmodus geöffnet, hat in den üblichen Bibliotheken 
grundsätzlich nur ein \n als Zeilenende. Egal, ob in der Datei nun \r, 
\n oder \r\n als Zeilenende verwendet wird.

Nur im Binärmodus tauchen dann die "wahren" Zeilenenden auf.

von Dirk D. (dicky_d)


Lesenswert?

S. R. schrieb:
> [...] OSX [...]
> Fun Fact:
> Eine Datei, im Textmodus geöffnet, hat in den üblichen Bibliotheken
> grundsätzlich nur ein \n als Zeilenende. Egal, ob in der Datei nun \r,
> \n oder \r\n als Zeilenende verwendet wird.
>
> Nur im Binärmodus tauchen dann die "wahren" Zeilenenden auf.

Irgendwie muss man ja dafür sorgen das die alten files nach dem update 
noch funktionieren :D

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.