一.作用与使用方法
1.作用
字符串以 '\0' 作为结束标志,strlen函数返回的是在字符串中 '\0' 前⾯出现的字符个数
参数指向的字符串必须要以 '\0' 结束。
2.使用方法
要使用该函数需要包含头文件string.h
size_t strlen ( const char * str );
注意函数的返回值为size_t,是⽆符号的
#include <stdio.h> #include <string.h> int main() { char str[] = "abcdef"; printf("%d",strlen(str)); return 0; }
输出结果:
6
二.my_strlen的实现
1.计数器方式
#include<stdio.h> //1.常用方法一个一个的数 int my_strlen(char* arr1) { int re=0; while(arr1[re]!='\0') re++; return re; } int main() { char arr1[]="ncskjdf"; int re=my_strlen(arr1); printf("%d\n",re); }
输出结果:
7
2.指针-指针
#include<stdio.h> //2.指针-指针 int my_strlen2(char* arr1) { char *p=arr1; while(*p!='\0') p++; return p-arr1; } int main() { char arr1[]="ncskjdf"; int re=my_strlen2(arr1); printf("%d\n",re); }
输出结果:
7
3.递归
#include<stdio.h> //3.递归 int my_strlen3(char* arr1) { if(*arr1=='\0'){ return 0; } else { return 1+my_strlen3(++arr1); } } int main() { char arr1[]="ncskjdf"; int re=my_strlen3(arr1); printf("%d\n",re); }
输出结果:
7