\r是回车(CR) ,将当前位置移到本行开头,ASCII码值(十进制)为013。
区别:
1、是否换行
'\r' 回车,回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖;'\n' 换行,就是输入完一行内容后,光标转到下一行的起始位置 ,不会回到行首。
例如:printf("first line\n");
2、表现不同
Unix系统里,每行结尾只有“<换行>”,即"\n";Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”,即"\r";。
3、不同系统打开会不同
Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
参考资料: