c语言中\n和\r有什么区别

如题所述

1、使用方式的不同

回车 \r 本义是光标重新回到本行开头,r的英文return,控制字符可以写成CR,即Carriage Return。换行 \n 本义是光标往下一行(不一定到下一行行首),n的英文newline,控制字符可以写成LF,即Line Feed

2、使用环境不同

在不同的操作系统这几个字符表现不同,比如在WIN系统下,这两个字符就是表现的本义,在UNIX类系统,换行\n就表现为光标下一行并回到行首,在MAC上,\r就表现为回到本行开头并往下一行,至于ENTER键的定义是与操作系统有关的。通常用的Enter是两个加起来。

3、表达意思的不同

\n 10 换行NL,\r 13 回车CR。/r (return): 回到本行行首,这就会把这一行以前的输出覆掉;/n (newline):换行+回车,把光标先移到下一行,然后换到行首->也就是下一行的行首。Unix系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”,即“\r”。

参考资料来源:百度百科—c语言

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-04

在c语言中\n和\r的区别如下:

1、意思不同

\n的意思是换行符,\r的意思是回车符。

2、用法不同

在C语言中,语句结尾打上\n是转到下一行同一个位置,而\r是回到当前行的行首,如果同时打上\r\n就会来、转到下一行的行首。

3、系统标准不同

在Unix和Linix中,每行的结尾只有\n;而Windows系统中,每行结尾是\r\n;而在Mac中,结尾只有\r。

本回答被网友采纳
第2个回答  2019-10-21

\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符号。

扩展资料

转义字符串(Escape String),即字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号。

比如,要显示小于号(<),就可以写 < 或者 < 。用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity。

参考资料来源:

转义字符_百度百科

本回答被网友采纳
第3个回答  2018-12-06

c++中的\n和\r的区别:

一、ASCII码不同

\n的ASCII码为10。

\r的ASCII码为13。

二、作用不同

\n是在下一行输入输出。

\r是擦除本行前面的所有内容,光标回到本行第一字符开始输出。

三、运行的效果不同

\n运行后换到当前位置的下一行,而不会回到行首。

\r运行后回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖。

四、在不同电脑操作系统中功能不同

\n在linux或windows系统中都能实现回车+换行的功能。

\r在windows系统中,\r只回车不换行的,\n是换行,但在有些编辑中,单独的\n是不会换行的。

第4个回答  2019-06-27

\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符号。

参考资料:

百度百科-换行符

相似回答