C语言问题。这道题看不懂啊,求大神详细解释下,谢谢
展开全部
这是 统计 字符串 中字符个数的。
还有 goodbye 写错了。如果 中间没有 空格,那么 这个结果应该是 8;
还有 goodbye 写错了。如果 中间没有 空格,那么 这个结果应该是 8;
追问
可以详细解释下吗,实在看不懂,谢谢~
追答
s 是 指针类型的 形参,主函数调用 的时候,传递 了 “goodbye!”字符串 的存储地址 进来。
在 子函数中,p 是 局部定义的 指针变量,一开始,程序将 s 内容(即 字符串 的地址) 拷贝给 p,让p 也知道了 字符串“goodbye!”的存储地址,然后开始 判断 这个地址里面 的内容是否 为 空(ASCII值=0),如果不是空(即 有字符),那就把 p的内容+1,查下一个地址。如果 是 空(即 字符串 结束),那就 结束 循环。此时 p 的内容 偏移量,刚好 = 字符的个数。于是 就 返回 p-s(即 p 的偏移量)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询