\r是回车符,\n是换行符。
计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

于是,研制人员想了个办法解决这个问题,就是在每行(每行能打印的字符是确定的)后面加两个表示结束的字符一个叫做“回车”,告诉打字机把打印头定位在左边界另一个叫做“换行”,告诉打字机把纸向下移一行
这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。
后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。

  1. Unix 系统里,每行结尾只有“<换行>”,即“\n”;
  2. Windows系统里面,每行结尾是“<回车><换行>”,即“ \r\n”;
  3. Mac系统里,每行结尾是“<回车>”,即“\r”。

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

二十七、Java日常积累:\r \n回车和换行的区别相关推荐

  1. 关于“回车”的有趣历史 及 “回车”与“换行”的区别

           在输入文本时,回车键一敲,就开始了新的一行,这个习惯性用法难免误导 C/C++ 的初学者们对 回车符(CR, Carriage Return)'\r' 和 换行符(LF, Linefee ...

  2. python回车和换行的区别_回车与换行的区别 - bithup的个人空间 - OSCHINA - 中文开源技术交流社区...

    区别: \r: 全称:carriage return (carriage是"字车"的意思,打印机上的一个部件) 简称:return 缩写:r ASCII码:13 作用:把光标移动到 ...

  3. 正则表达式:回车和换行的区别

    关于"回车"(carriage return)和"换行"(line feed)这两个概念的来历和区别. 在计算机还没有出现之前,有一种叫做电传打字机(Telet ...

  4. shell脚本回车换行_终于搞懂了回车与换行的区别

    关于换行和回车其实平时我们不太在意,所以关于两者的区别也不太清楚,在平时开发时可能会遇到一些文件处理的问题,放到不同的操作系统上出现各种坑.那么回车和换行到底有哪些区别呢?今天咱们就来总结一下. 1. ...

  5. python换行和回车的区别_终于搞懂了回车与换行的区别

    关于换行和回车其实平时我们不太在意,所以关于两者的区别也不太清楚,在平时开发时可能会遇到一些文件处理的问题,放到不同的操作系统上出现各种坑.那么回车和换行到底有哪些区别呢?今天咱们就来总结一下. 1. ...

  6. python回车和换行的区别_回车与换行的解释~!

    Unix/Linux和Windows回车换行 Linux/Unix下的回车符与windows下的不同,Linux/unix下的回车符是'0d',而在windows下则是'0d0a', 据说这和电脑刚开 ...

  7. python回车和换行的区别_回车与换行的区别(转)

    add by zhj: 不同操作系统下换行符不同,如下: \n: UNIX \n\r: window \r: MAC OS 我们经常遇到的一个问题就是,Unix/Mac系统下的文件在Windows里打 ...

  8. 图解回车和换行的区别

    文章目录 1. 定义 2. 图解 3. 讨论 4. 结论 1. 定义 中文 英文 简写 HEX Character ASCII 回车 Carriage return CR 0x0D \r 13 换行 ...

  9. 【C++语法】回车与换行(vs2008)

    首先给出:回车对应"\r"(解释:就是光标移到该行的最前端),回车+换行对应"\n". (1)cout<<"First"< ...

最新文章

  1. linux的上传工具,Linux下精简版上传工具lrzsz
  2. python sort函数key_Python:s.sort([cmp[, key[, reverse]]])
  3. 3G时代需要“移动云计算专业”
  4. 基于 Java NIO 实现简单的 HTTP 服务器
  5. SpringBoot中使用@Mapper注解需要哪个包
  6. CRM webClient UI搜索参数里max hit是怎么被后台服务器处理的
  7. linux配置apache2
  8. 请写出至少五个块级元素_Java 面试题(五)
  9. ES6新特性_ES6语法糖-子类对父类方法的重写---JavaScript_ECMAScript_ES6-ES11新特性工作笔记037
  10. DRILLNET 2.0------第二十章 高温高压钻井水力计算模型
  11. Unicode、UTF-8、UTF-16之间的关系
  12. Xposed 插件开发(三)—— 我的 hooker 是哪里导致出错了?
  13. WAP PUSH解析(1)——SMS PDU编码
  14. 阿里巴巴《Java开发手册(黄山版)》阅读笔记
  15. WordPress网站屏蔽后台搜索词广告-奇它博客
  16. 用python写一个NC(八)
  17. Elasticsearch-好文推荐
  18. Android实现SSH Client
  19. android 皮肤包换肤之Resources加载(一)
  20. node.js常用模块

热门文章

  1. 2009成渝微型计算机处于空白,2020届广州市高三年级调研测试文综地理卷
  2. 开源PLog库的使用
  3. 计算机应用基础第一学期期末考试答案,大学计算机应用基础期末考试试卷及答案...
  4. APP自动化处理拍照
  5. 四足动物模型控制中的模型自适应神经网络
  6. 蓝牙芯片MG223智能遥控器主控方案
  7. Citrix Virtual PC
  8. 2021年省市区街道居委五级联动
  9. Dev-C++:同时编译多个文件
  10. ISP 图像测试经常使用的光源色温