33,311
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
int get_str_length(const char *str);
#if 0
int f(int *p1, int *p2)
{
int L;
if(*p1==*p2) return 1;
f(*p1,*p2)=f(*p1,*(p2-1) )+1;
L=f(*p1,*p2);
return (L);
}
#endif
int main()
{
char str[100];
scanf("%s", str);
printf("%d\n", get_str_length(str));
#if 0
int *p1,*p2;
p1=str[0];
*p2=*p1;
while (*p2)
{
p2++;
}
*(p2--);
printf("%d\n",f(*p1,*p2));
#endif
return 0;
}
int get_str_length(const char *str)
{
if (*str == '\0')
return 0;
else
return get_str_length(str + 1) + 1;
}
参考一下吧
如果用两个指针,既然用while循环得到p2的值,为什么再求字符串长度呢,那不是在这个while循环里加一个计数器不就实现了吗?