据我所知,每个操作系统都有所不同,例如,在Windows中可能会出现“\ r \ n”,在Unix中可能会出现“\ n”,而在Mac中可能会出现“\ r”。
这两个(或三个,如果你想包括“\ r \ n”)转义序列有什么区别?为什么它在所有系统中都不一致?
我很好奇。
答案 0 :(得分:29)
'\ r'和'\ n'之间的区别是3。
答案 1 :(得分:15)
因为它不是。
\ r \ n表示“回车”。
\ n表示“新行”换行符
有些系统足够明智地建议将光标移动到新行所需的全部内容是\n
。其他人认为更合适的是\r\n
,因为他们可能声称列位置也需要重置(即\r
)。
有时在计算中,事物就是“这种方式”。这是其中一种情况:)
答案 2 :(得分:7)
接受的答案并不准确。事实上,\ n表示'换行',而不是'换行'。这种区别很重要,因为这两个符号都回到了电传类型的时代,而不是计算机而不是CRT或LCD。对于电传打字机,将打印头移回第1列的行为和将纸张送入1行的行为是两种截然不同的动作。至于文件中行尾字符的不同约定的起源,其他答案正确地指出这只是一个历史的好奇心。
答案 3 :(得分:4)
答案 4 :(得分:3)
答案 5 :(得分:2)
有些系统甚至没有行尾的概念。 VAX / VMS和IBM VM操作系统都支持基于记录的文件,其中不需要行结束标记。