编写程序实现库函数strlen的功能,求字符串长度,不允许调用strlen函数。
[cpp] view plain copy
#include
#include
int my_strlen(char *p)
{
char *q = p;
while(*p != '\0')
p++;
return p-q;
}
int main()
{
char p[] = "abcdefgh";
printf("%d\n",strlen(p));
printf("%d\n",my_strlen(p));
return 0;
}
strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0')。