字符串问题,谢谢

LXW19900825 2011-01-07 08:31:12
语句printf("%d\n",strlen("ATS\n012\1\\");的输出结果是,能详细点吗,我得出的是10,A,T,S,\0,1,2,\,1,\\.
...全文
91 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
LXW19900825 2011-01-07
  • 打赏
  • 举报
回复
谢谢各位
Shrek_MyCpp 2011-01-07
  • 打赏
  • 举报
回复
应该是9个。
AnYidan 2011-01-07
  • 打赏
  • 举报
回复
很犀利的题目
灼眼的超哥 2011-01-07
  • 打赏
  • 举报
回复
要printf出符号,例如/"这些,就需要多加个/才会显示。
孤飞俊驰 2011-01-07
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 oym1986 的回复:]

\代表什么意思?那\\又代表?
[/Quote]

如果输出\,的话是printf("\\");
awsqsh 2011-01-07
  • 打赏
  • 举报
回复
\1也是转义字符 见识了。。。
oym1986 2011-01-07
  • 打赏
  • 举报
回复
\代表什么意思?那\\又代表?
乐CC 2011-01-07
  • 打赏
  • 举报
回复
应该是9,其实那天看过一个更有意思的,"\\01\2\012\429\129"猜猜答案是是多少?
滴水梵音 2011-01-07
  • 打赏
  • 举报
回复
我在VC6.0下编译打印为9;
再调用printf("%s\n","ATS\n012\1\\");语句打印结果如下:
A,T,S,换行符,0,1,2,笑脸,\
查看ACSII表可以知道\1也是转义字符,表示笑脸。
zyrr159487 2011-01-07
  • 打赏
  • 举报
回复
printf("%d\n",strlen("ATS\n012\1\\"));

答案是9
因为输出%d,但是\n,\1,\\都代表一个字符
kael_9527 2011-01-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 abc19abc91 的回复:]

引用楼主 lxw19900825 的回复:
语句printf("%d\n",strlen("ATS\n012\1\\");的输出结果是,能详细点吗,我得出的是10,A,T,S,\0,1,2,\,1,\\.

A,T,S,换行符,0,1,2,\,1,\.
[/Quote]
2了,明显弄错了,不好意思
luciferisnotsatan 2011-01-07
  • 打赏
  • 举报
回复
vs2005输出 9,lz用的啥编译器?

A,T,S,\n,0,1,2,\1,\\ 共9个
qiuhui00 2011-01-07
  • 打赏
  • 举报
回复
\n,\1,\\都是转义字符,只能算一个
qiuhui00 2011-01-07
  • 打赏
  • 举报
回复
应该是9吧
kael_9527 2011-01-07
  • 打赏
  • 举报
回复
[Quote=引用楼主 lxw19900825 的回复:]
语句printf("%d\n",strlen("ATS\n012\1\\");的输出结果是,能详细点吗,我得出的是10,A,T,S,\0,1,2,\,1,\\.
[/Quote]
A,T,S,换行符,0,1,2,\,1,\.

70,035

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧