黑马程序员技术交流社区
标题:
\r 和\n的区别
[打印本页]
作者:
杨志恒
时间:
2015-6-23 13:38
标题:
\r 和\n的区别
\r : return 到当前行的最左边。
\n: newline 向下移动一行,并不移动左右。
Linux中\n表示回车+换行;
Windows中\r\n表示回车+换行。
Mac中\r表示回车+换行。
在windows中换行是\n\r,\n表示换行,\r表示回车,\r和一种老式打印机有关。
在unix和Linux中换行是\n。
所以在windows下打开Linux或unix的文档时,所有内容会在一行中展示,因为没有\r。但是一些文本编辑器可以在windows下识别Linux或unix的换行,也就可以正常显示了。
在Linux或unix下打开windows文档会发现每行末尾多一个类似^M的符号,就是多了一个\r的造成的。
历史:
回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。
在计算机还没有出现之 前,有一种叫做电传打字机(Teletype Model 33,Linux/Unix下的tty概念也来自于此)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正 好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车(return)”,告诉打字机把打印头定位在左边界;另一个叫做“换行(newline)”,告诉打字机把纸向下移一行。这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。
作者:
home7192
时间:
2015-6-23 14:18
总结的太好了,终于不容易记混。另外Dos换行,是认识'\n'的哦!因为他是最基底的程序。
作者:
SimpleT
时间:
2015-6-23 14:30
学习了 :handshake
作者:
一口老郭
时间:
2015-6-23 20:41
又温习了一遍,谢谢!
作者:
发抖的_DtYJA
时间:
2015-6-23 21:12
又温习了一遍,谢谢!
作者:
a229473826
时间:
2015-6-23 21:15
感谢楼主分享
作者:
谢志宝
时间:
2015-6-23 21:20
感谢,很好的小知识点
作者:
十五号的人生
时间:
2015-6-23 21:21
涨知识了
作者:
一败tu地
时间:
2015-6-23 21:46
不错,这个是干货,收藏了
作者:
腹黑生姜
时间:
2015-6-23 22:09
很好的!
作者:
liu100chao
时间:
2015-6-23 22:20
赞一个哈!!!
作者:
安安安
时间:
2015-6-23 22:32
感谢分享。。
作者:
马也keyboard
时间:
2015-6-23 22:52
很具体,学习一下
作者:
GUO18735177413
时间:
2015-6-24 06:51
得到了有一个新知识,赞一个!!!
作者:
汪磊の
时间:
2015-6-24 14:50
学习了,楼主
作者:
水壶vs兔子
时间:
2015-6-24 16:40
复习了一遍,谢了!
作者:
帅帅loyal
时间:
2015-6-24 18:10
学习了,谢谢
作者:
进军黑马
时间:
2015-6-24 22:57
很好。。。。。。。。。。。。。。。
作者:
半山岩
时间:
2015-7-5 21:31
总结得不错啊
作者:
胡家兵
时间:
2015-7-5 21:46
必须顶一个 总结的正好
作者:
为了理想而奋斗
时间:
2015-7-5 21:49
再次温习一遍。
作者:
niuniu123456
时间:
2015-7-8 21:20
还有"\t"或"\n"在windows中是换行,“\l”在linux中换行.....还有好多呢!
作者:
鲁枝权双元
时间:
2015-7-8 22:14
总结的很好啊,不错的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2