1 \r \n 的来历

在计算机还没有出现之前,有一种叫做电传打自己的东西,每秒钟可以打 10 个字符,每个字符 0.1 秒,但是他有一个问题,就是换行的时候需要 0.2 秒,但是换行的时候又有字符传过来,那么传过来的字符就会丢失。于是开发就想了个办法,在每行后面加两个表示结束的字符一个是换行 \r,另一个是回车 \n。

后来,计算机被发明了,这两个概念也被移植到了计算机上,那时候存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以了。于是便出现了分歧。

符号 ASCII 码 意义
\n 10 换行 LF
\r 13 回车 CR

2 在 WINDOWS 中

  • \r 表示回车,回到当前行的行首,而不会换到下一行
  • \n 表示换行,换到当前位置的下一行,而不会到行首

3 在 Unix 中

\n 便是换到下一行的行首

4 在 MacOS 中

\r 是换到下一行的行首

参考资料

  1. \r,\n,\r\n 的区别