回车与换行的区别

区别:编程

 

  • \r:
    • 全称:carriage return (carriage是“字车”的意思,打印机上的一个部件)
    • 简称:return
    • 缩写:r
    • ASCII码:13
    • 做用:把光标移动到当前行的最左边
  • \n: 
    • 全称:new line
    • 别名:line feed
    • 缩写:n
    • ASCII码:10
    • 做用:把光标向下移动一行

 

不一样操做系统怎样表示“回车+换行”(即一行的结束):编程语言

  • Unix、Linux:\n表示回车+换行,\r没什么意义
  • Windows、DOS:\r\n表示回车+换行,顺序不能变
  • Mac:\r表示回车+换行

 

历史:操作系统

机械的英文打字机:在打字机上,有一个部件叫“字车”(carriage),每输入一个单词,“字车”就前进一格。当输满一行后,使用者就要推进“字车”到起始位置,这时打字机会有两个动做:“字车”归位、滚筒(roller)上卷一行(至关于“字车”下移一行),以便开始输入下一行。这两个动做合起来叫作“回车”,至关于如今键盘中的“Enter”键。继承

 

电传打字机:(Teletype Model 33,Linux/Unix下的tty概念也来自于此)每秒钟能够打10个字符。可是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好能够打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
因而,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫作“回车(return)”,告诉打字机把打印头定位在左边界;另外一个叫作“换行(newline)”,告诉打字机把纸向下移一行。后来这两个动做被缩写为“\r”和“\n”。英文

 

编程语言中如何使用:语言

由于Unix中是用“\n”表示一行的结束,因此在C语言(以及其余C语言的继承者,好比C++, Java)中能够直接使用“\n”,在不一样的操做系统中会被自动转换成相应的字符(好比在Windows中会被转成“\r\n”)。移动

相关文章
相关标签/搜索