C语言实现strlen()求字符串的长度。
用递归和循环的方法求
#include<stdio.h>
#include<stdlib.h>
int strlen_di(char arr[])//递归方法
{
if (arr[0] == '\0')
{
return 0;
}
return 1 + strlen_di(arr + 1);
}
int strlen_xun(char arr[])//循环方法
{
int i = 0;
while (arr[i] != '\0')
{
++i;
}
return i;
}
int main()
{
char arr[] = "maze shi yige aixuexi de ren";//可自定义
printf("%d\n", strlen_xun(arr));
printf("%d\n", strlen_di(arr));
system("pause");
return 0;
}
在递归语句中有 return 1 + strlen_di(arr + 1);
其中“arr+1”代表指针指向后一位,这个虽然是数组,在这里可以解释为指针。