换行回车的区别 2018-10-30

Posted qiulinzhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了 换行回车的区别 2018-10-30相关的知识,希望对你有一定的参考价值。

参考:
http://blog.chinaunix.net/uid-12038475-id-3766827.html
https://www.cnblogs.com/hq233/p/6389234.html

1.定义

回车: , 即 Carriage Return,控制字符可以写成 CR, 作用是将光标重新回到本行开头 ^M 是ascii中的‘ ‘, 回车符,是16进制的0x0D,八进制的015,十进制的13;^M在vi编辑器中可以使用Ctrl+ v + m三个键打出来
换行: , 即 New line,控制字符可以写成LF,即 line feed,即光标移到下一行(这个操作是直接往下一行,不回到行首);其ascii代码是10,十六进制为0x0A

2. 三大系统关于 换行 这一动作的区别:

  • Windows使用两个字符 ( 0x0D 和 0x0A )表示,即回到行首和下一行两个动作来实现换行
  • Unix系统里,只使用一个字符 来实现换行,即一个字符实现上面两个动作
  • Mac系统中,只使用一个字符 来实现换行,即一个字符实现上面2个动作。
    这样造成的后果是,Mac/Unix系统下面的文件在Windows下面打开时,由于Mac/Unix系统只有一个字符来表示换行,因此,会导致所有文件都出现在一行;而windows里的文件在Unix下打开,在每行的结尾会多出一个 ^M 字符

3. 历史:

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






以上是关于 换行回车的区别 2018-10-30的主要内容,如果未能解决你的问题,请参考以下文章

java中的回车和换行的含义及其区别?

“换行”和“回车”有啥区别?

, , 的区别

软回车(shift+enter)与硬回车(enter)区别

C语言中回车符和回车换行符有啥区别

h5键盘区分换行和回车