1.计数器方法.
size_t my_strlen(const char* str)
{
int count = 0;
assert(*str != NULL);
while (*str++)
{
count++;
}
return count;
}
主函数
int main()
{
char arr[] = "abcdef";
int len = my_strlen(arr);
printf("%d ", len);
return 0;
}
2.递归
int my_strlen(const char* str)
{
if (*str == '\0')
{
return 0;
}
else
return (1 + my_strlen(str + 1));
}
3.指针算法
int my_strlen(const char* str)
{
char* start = str;
while (*str)
{
str++;
}
return str - start;
}