第五阶段—函数—几个特殊函数—字符串操作函数:编写函数mystrlen(用递归函数实现)
1 #include<stdio.h> 2 #include<assert.h> 3 int my_strlen(const char *strDest) 4 { 5 6 assert(strDest != NULL);//断言:判断表达式一定为真,若为假,则终止程序 7 8 if(*strDest == '\0') 9 { 10 return 0; 11 }else{ 12 return(1 + my_strlen(++strDest));//对一个变量多次进行相同操作时可用递归 13 } 14 15 } 16
// int my_strlen(const char *strDest)
// {
// assert(strDest != NULL);//断言:判断表达式一定为真,若为假,则终止程序
// return('\0' != *strDest)?(1 + my_strlen(++strDest)):0;//对一个变量多次进行相同操作时可用递归
// }
17 int main(int argc, const char *argv[]) 18 { 19 char buf[1024] = {"abcdefg"};//定义需要传给形参,给形参赋值的变量 20 unsigned int len = 0; 21 len = my_strlen(buf); 22 23 printf("strlen(buf) = %d\n", len); 24 25 return 0; 26 }
浙公网安备 33010602011771号