In terms of ascii code, it's 3 -- since they're 10 and 13 respectively;-).
But seriously, there are many:
- in Unix and all Unix-like systems,
is the code for end-of-line,
means nothing special
- as a consequence, in C and most languages that somehow copy it (even remotely),
is the standard escape sequence for end of line (translated to/from OS-specific sequences as needed)
- in old Mac systems (pre-OS X),
was the code for end-of-line instead
- in Windows (and many old OSs), the code for end of line is 2 characters,
, in this order
- as a (surprising;-) consequence (harking back to OSs much older than Windows),
is the standard line-termination for text formats on the Internet
- for electromechanical teletype-like "terminals",
commands the carriage to go back leftwards until it hits the leftmost stop (a slow operation),
commands the roller to roll up one line (a much faster operation) -- that's the reason you always have
before
, so that the roller can move while the carriage is still going leftwards!-) Wikipedia has a more detailed explanation.
- for character-mode terminals (typically emulating even-older printing ones as above), in raw mode,
and
act similarly (except both in terms of the cursor, as there is no carriage or roller;-)
In practice, in the modern context of writing to a text file, you should always use
(the underlying runtime will translate that if you're on a weird OS, e.g., Windows;-). The only reason to use
is if you're writing to a character terminal (or more likely a "console window" emulating it) and want the next line you write to overwrite the last one you just wrote (sometimes used for goofy "ascii animation" effects of e.g. progress bars) -- this is getting pretty obsolete in a world of GUIs, though;-).
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…