大家说这个串的长度是几何

duduliao 2004-10-18 10:39:30
static char str[20]="%%\t\n\x1a\092i\223s";
int length=strlen(str);
printf("%d",length);
printf函数的输出结果是多少?
为什么呢?


...全文
190 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sukaru 2004-10-22
  • 打赏
  • 举报
回复
是的,我本来想这样说的,大家已经说了,我再说就是废话了
CZHNY 2004-10-22
  • 打赏
  • 举报
回复
8个
duduliao 2004-10-21
  • 打赏
  • 举报
回复
谢谢大家,有种霍然开朗的感觉!
qiqi162002 2004-10-18
  • 打赏
  • 举报
回复
是八格不是占8位
dick4610 2004-10-18
  • 打赏
  • 举报
回复
\t 不是默认的8位吗?
kobefly 2004-10-18
  • 打赏
  • 举报
回复
是5啊
%
%
\t
\n
\x1a
\0//这里被截断,字符串的结束标志
ftkghost 2004-10-18
  • 打赏
  • 举报
回复
哦 我知道了
static char str[20]="%%\t\n\x1a\092i\223s";
%%是两个%号 \t是一个水平制表符 \n是回车,\x1a是ASCII符号右箭头
\092实际是'\0' '9' '2',而'\0'标志了字符串的结束
应该strlen到\0就停止计算str的长度了 其长度就是5(\0前面有5个字符)
ftkghost 2004-10-18
  • 打赏
  • 举报
回复
5?为什么啊?
不懂

70,020

社区成员

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

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