图中的C语言程序的输出结果为什么会是7呢?

图中的C语言程序的输出结果为什么会是7呢?不是*p!=0的时候才计数吗?“0ABCDEF”中非0的就只有ABCDEF这六个啊 答案怎么就成7了呢?看解析也看不明白

第1个回答  2016-09-21
0就是\0,即指针p没指向字符串的末端就一直循环后移,最后p指向了\0,s还是初始位置,那么两者的差就是字符的个数。本回答被网友采纳
第2个回答  2016-09-21
ascii的0和'0'不是一回事追答

这里的0是指ascii的0,也就是空字符。而字符'0'的ascii是48

而且试想如果是对于'0',那么就第一次迭代就退出循环了,也没机会迭代后面的字符

本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网