\r\n是什么

时间:2020-12-19 作者:WilliamChan

经常把“\r\n”写成“\n\r”,虽然在windows中显示结果也符合,但终究不是标准写法。接下来我们看看它们是什么。

\r:回车,ASCII码13   r->return
\n:换行,ASCII码10    n->newline

在Windows中:

‘\r’ 回车,回到当前行的行首,而不会换到下一行;

‘\n’ 换行,换到当前位置的下一行,而不会回到行首;

\r与\n的区别:

\r : return 到当前行的最左边。

\n: newline 向下移动一行,并不移动左右。

Linux中\n表示回车+换行;

Windows中\r\n表示回车+换行,就是移到到本行首再移到下一行;

Mac中\r表示回车+换行。

历史:
回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。
在计算机还没有出现之 前,有一种叫做电传打字机(Teletype Model 33,Linux/Unix下的tty概念也来自于此)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正 好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车(return)”,告诉打字机把打印头定位在左边界;另一个叫做“换行(newline)”,告诉打字机把纸向下移一行。


声明:若您对本文内容有任何意见,欢迎发送邮件至:admin@zhidaobu.com,本站会尽快回应并做出相应处理。