在指针传参时使用了c语言的库函数assert进行断言
需引用的头文件
//1.计数器
void my_strlen(char* str)
{
assert(str != NULL); //进行断言,检查传入的指针是否有效
int count = 0;
while (1)
{
if (* str++ != ' ')
{
count++;
}
if (*str == ' ')
{
break;
}
}
printf("%dn", count);
}
int main()
{
char arr[] = "abcdef";
my_strlen(arr);
return 0;
}
//2.递归
int my_strlen2(char* str)
{
assert(str != NULL); //进行断言,检查传入的指针是否有效
if (*str != ' ')
{
str++;
return my_strlen2(str) + 1;
}
else if (*str == ' ')
{
return 0;
}
}
int main()
{
char arr[] = "abcdef";
int ret = my_strlen2(arr);
printf("%d", ret);
return 0;
}



