1.递归实现
#include<stdio.h>
#include<stdlib.h>
int strlen_(char * str) {
if (*str == '\0')
{
return 0;
}
return 1 + strlen(str + 1);
}
int main() {
char a[] = "qwertyuiop";
int sum = strlen_(a);
printf("%d\n", sum);
return 0;
}
2.非递归实现
#include<stdio.h>
#include<stdlib.h>
int strlen_(char * str) {
int count=0;
while (*str != '\0') {
count++;
str++;
}
return count;
}
int main() {
char a[] = "qwert";
int sum = strlen_(a);
printf("%d\n", sum);
return 0;
}