概述
回车r和换行n的区别
r 回车是将光标移到一行的前面, n 是移到下一行 。
在windows下实现换行需要rn,而在UNIX,Linux下只要n即可。
在windows环境下,换行就是另起一行,回车就是回到一行的开头,所以在平时我们编写文件的回车符确切来说叫做回车换行符。
在控制台程序里,回车的本意就是将光标移动到屏幕最左边(此时光标的纵坐标没有变),换行就是将光标移动到下一行(此时光标的横坐标没有变),两者结合起来就是实现了回车(省略的说法)的效果。
在UNIX,Linux中就不同了,其中的“n”就是DOS中的“n”和“r”的组合效果。
| r 换行 | n 回车
| * ( x, y ) | + (0, y) + (x, y)
| * (x, y-1) |
|___________________X_> |_______________________X_>
起源是打字机啦,回车是将打字头复位,换行是将打字纸上卷一行。
回车是一行打印完后打印头返回起始位置
换行会有一个走纸的动作
这两个符号合起来才是我们平常所说的回车符
在屏幕上的表现就是光标移到下一行行首
在微软的系统中,C 程序处理文本是自动转换这两个符号的
读的时候将 rn 自动当作一个字符 n
写的时候写一个 n 自动转换为 rn
造成一种误解,好象 n 就是回车加换行
你可以向一个文件中写入一个 'n',用十六进制编辑器打开文件,会发现有两个字节 0D 0A, 就是 rn了,你读这个文件的时候,也只会读到一个字符 n
==============================================================
f form feed (octal 014) n new-line (octal 012) ( 12 八进制 也成为 Line Feed) r carriage return (octal 015) ( 15 八进制 ) t tab (octal 011) \ backslash () e ASCII null (octal 000) ' single quote (') " double quote (") ooo arbitrary byte of 1-3 octal digits e.g. '