问题标题:
急.chara[12]={'a','b','c','d','e','f','g',};strlen(a)的结果为多少?
问题描述:
急.chara[12]={'a','b','c','d','e','f','g',};strlen(a)的结果为多少?
吉明回答:
答案是:7
strlen(a)函数的功能是返回a的长度,不包括结束符NULL.(这是百度百科那里的解释)
实际用VC++运行了答案是7sizeof(a)=12;
如果是楼下那种情况:
chara[]={'a','b','c','d','e','f','g'};
strlen(a)是不确定的,此时字符'g'后面不存在'',所以sizeof(a)=7
如果手动在'g'后面添加'',变成
chara[]={'a','b','c','d','e','f','g',''};
此时strlen(a)是确定的,值为7,而sizeof(a)=8
点击显示
其它推荐
热门其它推荐