非递归:
#include <stdio.h>
#include <string.h>
int mystrlenN(char*str){
int i;
for (i = 0; str[i]; i++);//字符串遍历
return i;
}
int main()
{
printf("%d\n", mystrlenN("shanxikejidaxue"));
system("pause");
return 0;
}
递归:
#include <stdio.h>
#include <string.h>
int mystrlen(char*str){
if (*str == '\0'){
return 0;
}
return 1 + mystrlen(str + 1);//传参不要++,尽量使用+1;
}
int main()
{
printf("%d\n", mystrlen("shanxikejidaxue"));
system("pause");
return 0;
}