109. 设有如下函数定义:int fun(char *str){ char *p=str;while ( *p != '\0') p++; return (p-str);}则以下语句执行后的输出结果是( )。printf("%d\n",fun("Student"));A. 7B. 8C. 9D. 10求会的大神详细解析下,拜托了
1 回答
已采纳
凌丶星护
TA贡献5条经验 获得超2个赞
从函数定义的部分开始解析:
要求传入的是一个字符类型的指针(亦或者理解为字符串的首地址)
然后将str的值传递给p(p中此时存储的就是字符串首地址)
开始循环,直到p指向的位置为'\0'(也就是说,到达了字符串的末尾)
然后返回p与传入指针的差值(也就是末尾的地址减去首地址,返回的就是字符串的长度)
实例:
已经知道函数返回字符串的长度,student的长度为7,选择A选项
- 1 回答
- 0 关注
- 915 浏览
添加回答
举报
0/150
提交
取消