1.strlen(求字符串长度)
注:
- strlen函数以'\0'为结束标志,strlen函数返回的是'\0'前面的字符个数(不包含'\0')
- 参数指向的字符串必须要以'\0'结束
- 注意函数strlen函数的返回类型是size_t---无符号类型(皆为正数)
- 学会strlen函数的模拟函数
1.0此函数的应用
#include<stdio.h>
#include<string.h>
int main()
{
char arr[]="abcdef";
printf("%d\n",strlen(arr));
}
2.0模拟此函数
#include<stdio.h>
#include<assert.h>
int my_strlen(const char* str)
{
assert(str!=NULL);
int count=0;
while(*str!='\0')
{
count++;
str++;
}
return count;
}
int main()
{
char arr[]="abcdefg";
int len=my_strlen(arr);
printf("%d\n",len);
}
2.strcpy(字符串拷贝)
注:
1.0此函数的应用
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[]="abcdef";
char arr2[]="hello";
strcpy(arr1,arr2);
printf("%s",arr1);
}
2.0此函数的模拟
#include<stdio.h>
#include<assert.h>
char* my_strcpy(char* str1,const char* str2)
{
assert(str1!=NULL&&str2!=NULL);
char* ret=str1;
while(*str2!='\0')
{
*str1=*str2;
str1++;
str2++;
}
return ret;
}
int main()
{
char arr1[]="abcdef";
const char arr2[]="hello";
my_strcpy(arr1,arr2);
printf("%s",arr1);
}