“回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别

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

0x0D(asc码是13) 指的是“回车”   \r是把光标置于本行行首

0x0A(asc码是10) 指的是“换行”    \n是把光标置于下一行的同一列

0x0D + 0x0A           回车换行               \r\n把光标置于下一行行首  

\n是换行,英文是line feed,ASCII码是0x0A。

\r是回车,英文是carriage return ,ASCII码是0x0D。

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

Unix系统里,每行结尾只有“<换行>”,即"\n"

Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”(此处顺序一定不能颠倒了!!!)

Mac系统里,每行结尾是“<换行>”,即"\n"

一个直接后果是,Unix/Mac系统下的文件在 Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。

c语言编程时(windows系统)
\r 就是return 回到 本行 行首 这就会把这一行以前的输出 覆盖掉。
如:
最后只显示 xixi 而 hahaha 背覆盖了
int main () 

        cout << "hahaha" << "\r" << "xixi" ;
}

\n 是回车+换行 把光标 先移到 行首 然后换到下一行 也就是 下一行的行首拉
int main()
{
        cout << "hahaha" << "\n" << "xixi" ;
}

ASCII表

“回车”(Carriage Return)和“换行”(Line Feed)相关推荐

  1. axure原型怎么让文字自动换行_理解「回车」和「换行」,纠正数据输入过程中的坏习惯...

    各位朋友,你们好. 今天和大家分享的是一个很小很的技巧:文字.内容换行. 关于文字换行,你们可能已经看过了很多这方面的文章,那些文章中确实已经讲解过不少换行操作的方法.那么我今天讲什么呢?大家看内容目 ...

  2. Windows、Unix、Mac不同操作系统的换行问题 回车符\r和换行符\n

    一.概念: 换行符'\n'和回车符'\r' (1)换行符就是另起一行  --- '\n' 10 换行(newline) (2)回车符就是回到一行的开头 --- '\r' 13 回车(return) 所 ...

  3. 回车(carriage return)和换行(line feed)的区别和来历

    文章转自:http://blog.csdn.net/xiaoxian8023/article/details/8448160.版权归原作者. 关于"回车"(carriage ret ...

  4. Incorrect line ending: found carriage return (\r) without corresponding newline (\n)错误的解决方案...

    如果打开layout的xml文件,发现报错了,而且错误类型是Incorrect line ending: found carriage return (\r) without correspondin ...

  5. linux cr换行符,回车符CR和换行符LF

    我在Windows电脑上做开发时,经常会见到这个现象.代码从远程git仓库clone下来后,然后npm install安装依赖后,打开任意一个代码文件会看到每行结尾处有如下报红: 将鼠标指针停留在行尾 ...

  6. 如何在 JavaFX 的 TextArea 实现回车发送信息而不换行,但组合键 Ctrl + Enter 换行

    如何在 JavaFX 的 TextArea 实现回车发送信息而不换行,但组合键 Ctrl + Enter 换行   JavaFX 的恼人之处在于很多基本的操作都要自己亲力亲为.在默认情况下,在 Tex ...

  7. 专业英语笔记(Line Feed and Type Conversion)

    Let's get started. I have some questions for you. 1. What's the difference between need and want? 2. ...

  8. 【textarea】按下回车发送消息不换行,怎么实现?

    <textarea id="a" style="height:300px; width:500px"> </textarea> < ...

  9. python输出回车_Python print 如何换行输出?

    Python print 如何换行输出? 在Python中使用print函数,可以在输出内容中加入"\n"换行符,实现换行输出,"\n"是一种计算机语言表达方式 ...

最新文章

  1. MFC接收命令行参数的三种方法
  2. SVM+HOG:从完全不包含人体的图片中随机剪裁出64*128大小的用于人体检测的负样本
  3. java pdf 水印_Java 在PDF中添加水印——文本/图片水印
  4. 计算几何——圆卡精度cf1059D
  5. ECharts 浙江地图实践
  6. RHEL6本地YUM源配置
  7. matlab 连续相同数据库,MATLAB向量:防止来自相同范围的连续值
  8. 全网首发:JDK绘制文字:八、绘制函数简要分析
  9. 如何把R加到环境变量 Linux,如何设置R的环境变量以在RedHat Linux(RHEL6)上的Tomcat中使用...
  10. ext4文件系统制作 - make_ext4fs 参数介绍【转】
  11. 微信小程序支付宝小程序合并二维码
  12. 学习日记day29 平面设计 色彩
  13. Android图片处理之Glide使用大全
  14. cmake的aux_source_directory
  15. 安装固态硬盘后黑屏如何解决?
  16. 多张图片怎么同时修改dpi?教你一键批量修改图片dpi
  17. 用C语言图形库画一个红色爱心
  18. python代码怎么变成软件_从Python代码到APP,你只需要一个小工具:GitHub已超6000星
  19. 计量经济学及Stata应用 陈强 第九章模型设定与数据问题习题9.5
  20. 通过JS定义一个Iframe

热门文章

  1. SpringBoot 自定义Starter(阿里云短信、消息推送)
  2. 使用PyG进行图神经网络的节点分类、链路预测和异常检测
  3. 上海通用电焊机交流机系列:中国交流机第一品牌
  4. 在这次DTF中戴尔的数字化转型的观点,相信你不想错过
  5. ithoughts快速开始-思维导图工具
  6. Stable diffusion中mov2mov
  7. 免费矢量图工具软件inkscape
  8. Sitecore 配置 Oauth2.0 OpenId Connect
  9. 整理的jquery使用技巧
  10. OpenCV的职业发展如何?怎么定发展方向?