strlen三种模拟方法
法一:计数器方式
int my_strlen(const char * str)
{
int count = 0;
while(*str)//当*str为'\0'就停止循环
{
count++;
str++;
}
return count;
}
法二:不能创建临时变量计数器,递归方法
int my_strlen(const char * str)
{
if(*str == '\0')
return 0;
else
return 1+my_strlen(str+1);
}
法三:指针-指针的方式
int my_strlen(char *s)
{
char *p = s;
while(*p != ‘\0’ )
p++;
return p-s;//一个数组的元素地址是从低到高依次排序的
}