| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 578 人关注过本帖
标题:C语言中转义字符\n的使用问题
只看楼主 加入收藏
hushiqian
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-6-21
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
C语言中转义字符\n的使用问题
#include "stdio.h"
 void main()
 {
 printf(" ab c\tde\rf\tg");
 }

#include "stdio.h"
 void main()
 {
 printf(" ab c\tde\rf\tg\n");
 }
在VC++6.0中为什么第二个程序多加了一个\n输出的结果就由 f g

变成f ge ??
转义字符\n 出来换行还有其他意思吗?
搜索更多相关主题的帖子: include C语言 
2013-06-21 22:11
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:7 
和 \n 无关吧

DO IT YOURSELF !
2013-06-21 22:19
hushiqian
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-6-21
收藏
得分:0 
回复 2楼 wp231957
那是什么原因呢 ? 我用VC测试的时候出现上面两个不同的结果。
2013-06-21 22:29
笑傲
Rank: 8Rank: 8
来 自:迪拜
等 级:蝙蝠侠
威 望:5
帖 子:223
专家分:856
注 册:2013-3-9
收藏
得分:7 
主要是\r返回行首,第一个程序中没有\n,所以e被press any key to continue覆盖了
而第二个程序中有\n,所以press any key to continue被显示到了下一行,所以没有将e覆盖;
只是我的愚见,欢迎指正,\r我还没用过,不起眼,以前就都没注意

练就一身本领,只为笑傲江湖!
2013-06-21 22:34
浮云之冰雪
Rank: 2
等 级:论坛游民
帖 子:74
专家分:89
注 册:2013-5-11
收藏
得分:7 
此事与\n无关,祸首乃\r.

c语言编程时(windows系统)\r 就是return 回到本行行首这就会把这一行以前的输出覆盖掉,如:
int main()
{
cout << "hahaha" << "\r" << "xixi" ;
}
最后只显示 xixi 而 hahaha 被覆盖了
\n 是回车+换行 把光标 先移到 行首 然后换到下一行 也就是 下一行的行首拉
int main() {
cout << "hahaha" << "\n" << "xixi" ;
}
则 显示
hahaha
xixi

潇洒不可少!
2013-06-22 09:00
hushiqian
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-6-21
收藏
得分:0 
回复 4楼 笑傲
谢谢、
2013-06-22 12:16
hushiqian
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-6-21
收藏
得分:0 
回复 5楼 浮云之冰雪
恩恩 、懂了 谢谢大神
2013-06-22 12:17
快速回复:C语言中转义字符\n的使用问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028384 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved