回车符号和换行符号产生背景:    

关于“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别。
在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
     于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。
这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。
      后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。

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

Unix 系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“ <回车><换 行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”。一个直接后果是,Unix/Mac系统下的文件在Windows里打 开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。

文本文件的行结束符,传统上
PC机 用 CRLF
苹果机用CR
unix 用 LF
CR -- 回车符,c语言'\r'
LF -- 换行符, c语言'\n'
不同计算机上c语言统一规定为:
文本文件的行结束符一律变成一个符号LF,也就是换行符,也就是new line符, 也就是'\n'.
“回车和换行符转换成一个换行符”-- 对PC机而言,文本文件行结束符,CRLF读入后,丢掉CR,留   LF.
例如fgets() 读入一行,行尾只有LF,没有CR.
在解析文本或其他格式的文件内容时,常常要碰到判定回车换行的地方,这个时候就要注意既要判定"\r\n"又要判定"\n"。写程序时可能得到一行,将其进行trim掉'\r',这样能得到你所需要的string了。'\n' 10 换行(newline)
'\r' 13 回车(return)

回车符号和换行符号的区别相关推荐

  1. 回车符号和换行符号产生背景

    回车符号和换行符号产生背景: 关于"回车"(carriage return)和"换行"(line feed)这两个概念的来历和区别. 在计算机还没有出现之前,有 ...

  2. 回车符,换行符的区别

    首先介绍一下"回车"(carriage return,'\r')和"换行"(line feed,'\n')这两个概念的来历和区别.在计算机还没有出现之前,有一种 ...

  3. 回车符号和换行符号原来是这样产生的

    今天看鸟哥的私房菜,看到tr 命令时候,有个示例提到了换行和回车,之前一直没去想过回车和换行的区别,今天想了下有些许好奇,找到了以下文档,瞬间明白了. 关于"回车"(carriag ...

  4. 回车符与换行符的区别

    引用了博客:https://blog.csdn.net/fanwenbo/article/details/54848429 这里是我自己做的实验,如下: printf("A is here! ...

  5. C/C++编程:回车符和换行符

    回车符号和换行符号产生背景 在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符.但是它有一个问题,就是打完一行换行的时候,要用去0.2秒, ...

  6. Javascript去除回车换行符号和PHP去除回车换行符的方法

    在不同的操作系统,回车换行符号是不一样的,看下面: 首先说说\n,\r,\t \n 软回车: 在Windows 中表示换行且回到下一行的最开始位置 在Linux.unix 中只表示换行,但不会回到下一 ...

  7. linux系统vim下输入回车换行符号的解决方法

    linux系统vim下输入回车换行符号的解决方法 遇到问题 vim再linux 下回车后符号为'\r', 而不是我们想要的像windows下为'\r\n' 怎么解决呢?解决方法如下: 1. linux ...

  8. 转: 回车(CR)与换行(LF), '\r'和'\n'的区别

    [转] 回车(CR)与换行(LF), '\r'和'\n'的区别 2011-03-15 21:11 转载自 Codefuture 最终编辑 Codefuture 一:回车"(Carriage ...

  9. 【转载】 C++中回车换行(\n\r)和换行(\r)的区别

    原文:http://blog.csdn.net/xiaofei2010/article/details/8458605 windows下的点一下回车,效果是:回车换行,就是\r\n unix系统下的回 ...

最新文章

  1. 洛谷 题解 CF910C 【Minimum Sum】
  2. 事故通报绝不能一报了事22344
  3. LeetCode 1198. 找出所有行中最小公共元素(二分/合并有序链表)
  4. 【Python成长之路】机器学习:10+分类算法汇总学习
  5. 章泽天将赴英国剑桥大学读书?证件照都是这么能打...
  6. python 开发工具_「干货」推荐一整套 Python 开发工具
  7. aws rds监控慢sql_探索AWS RDS SQL Server上SQL Server集成服务(SSIS)
  8. springboot整合aliyun的物流订单查询
  9. python正弦函数幂级数展开_正余弦函数的幂级数展开
  10. RaiseCOM(瑞斯康达)交换机常用配置命令大全
  11. 哔哩哔哩2020校园招聘算法笔试卷(二)
  12. 教你如何快速突破TikTok限流--TK领航社tiktok苹果版安卓版下载教程
  13. 系统消息模块的设计原理
  14. 大学生变身建筑工人:在家隔离的美国学生们,正在Minecraft中复现一座座大学校园...
  15. git——合并时的冲突解决
  16. 计算机毕业设计 SpringBoot+Vue招投标系统 招标系统 投标系统 招标采购系统Java Vue MySQL数据库 远程调试 代码讲解
  17. 51单片机c语言除法符号,单片机c语言教程:C51运算符和表达式
  18. 多渔:赚钱,还是要脚踏实地!
  19. win7为啥总扫描计算机,老司机搞定win7系统共享扫描仪的解决办法
  20. Python学习记录(一)成绩转换

热门文章

  1. MSI B450迫击炮装机常见问题解决方法
  2. 资源分享|免费注册申请永久的eu.org顶级域名创建属于自己的域名,再也不用给博客域名续费了!...
  3. 罗技 连点 脚本_双十一,罗技,价格不贵又好用的办公无线鼠标,吐血推荐!2020.10月,双11...
  4. Cache架构以及X86ARM @Linux平台cache eviction功能测试
  5. Lua的浅拷贝和深拷贝
  6. ubuntu 中清理文件
  7. 毫米波雷达基本原理,多普勒效应技术,你知道多少?
  8. Xavier法与何恺明法初始化权重的意义及原理
  9. JavaScript检测原始值、引用值、属性
  10. 国内如何用chatgpt