前言
strlen的头文件<string.h>
一、strlen描述
C 库函数 size_t strlen(const char *str) 计算字符串 str 的长度,直到空结束字符,但不包括空结束字符。
二、strlen声明
size_t strlen(const char *str)
三、serlen返回值
该函数返回字符串的长度。
四、实例
int main()
{
char str[50] = {"dianzan"};
int len;
len = strlen(str);
printf("长度是%d\n",len);
return(0);
}
输出结果:
五、strlen的模拟
1、计数法
int my_strlen(const char* str)
{
assert(str);
int i = 0;
while (*str != '\0')
{
i++;
str++;
}
return i;
}
int main()
{
char arr[20] = {"dianzan"};
int len;
len = my_strlen(arr);
printf("长度是%d\n",len);
return(0);
}
2、指针减指针
int my_strlen(const char* str)
{
assert(str);
const char *pr= str;
while (*pr != '\0')
{
pr++;
}
return (pr - str);
}
int main()
{
char arr[20] = { "dianzan" };
int len;
len = my_strlen(arr);
printf("长度是%d\n", len);
return(0);
}
3、递归
int my_strlen(const char* str)
{
assert(str);
if (*str == '\0')
return 0;
else
return 1 + my_strlen(str + 1);
}
int main()
{
char arr[20] = { "dianzan" };
int len;
len = my_strlen(arr);
printf("长度是%d\n", len);
return 0;
}