一:strlen函数----------求字符串长度
1:函数原型
size_t strlen( const char *string );
2:代码例子
void my_strlen()
{
char str[] = "nihao";
int a = strlen(str);
printf("%d\n", a);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/048a96add6187cda253c8e1b536cc551.png)
二:strcpy函数----------字符串拷贝
1:函数原型
char* strcpy(char* destination,const char* source);
2:代码例子
void my_strcpy()
{
char str[] = "########";
char a[] = "hello";
strcpy(str, a);
printf("%s\n", a);
printf("%s\n", str);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/8d73db820cb2506ceebc788ed1384f76.png)
三:strncpy函数----------字符串指定位置拷贝
1:函数原型
char*strncpy(char*dest,char*src,size_tn);
2:代码例子
void my_strncpy()
{
char str[] = "123456789";
char a[] = "hello";
printf("-----1-----\n");
printf("%s\n", str);
strncpy(str, a, 4);
printf("%s\n", a);
printf("%s\n", str);
strcpy(str, "123456789");//复原
printf("-----2-----\n");
printf("%s\n", str);
strncpy(str+2, a, 3);
printf("%s\n", a);
printf("%s\n", str);
strcpy(str, "123456789");//复原
printf("-----3-----\n");
printf("%s\n", str);
strncpy(str, a+1, 4);
printf("%s\n", a);
printf("%s\n", str);
strcpy(str, "123456789");//复原
printf("-----4-----\n");
printf("%s\n", str);
strncpy(str+4, a+2, 3);
printf("%s\n", a);
printf("%s\n", str);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/00cd478da32f79c4242dd67a9667b3c6.png)
四:strcat函数----------字符串追加
1:函数原型
char * strcat ( char * destination, const char * source );
2:代码例子
void my_strcat()
{
char str[] = "########";
char a[] = "hello";
strcat(str, a);
printf("%s\n", a);
printf("%s\n", str);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/0d656b6fcc7f6f8f3d5de05178305845.png)
五:strncat函数----------字符串追加指定个数字符
1:函数原型
char* strncat(char* dest, const char* src, int num)
2:代码例子
void my_strncat()
{
char str[] = "123456789";
char a[] = "hello";
printf("-----1-----\n");
printf("%s\n", str);
strncat(str, a, 3);
printf("%s\n", a);
printf("%s\n", str);
strcpy(str, "123456789");//复原
printf("-----2-----\n");
printf("%s\n", str);
strncat(str+2, a, 3);
printf("%s\n", a);
printf("%s\n", str);
strcpy(str, "123456789");//复原
printf("-----3-----\n");
printf("%s\n", str);
strncat(str, a+1, 3);
printf("%s\n", a);
printf("%s\n", str);
strcpy(str, "123456789");//复原
printf("-----4-----\n");
printf("%s\n", str);
strncat(str+4, a+2, 3);
printf("%s\n", a);
printf("%s\n", str);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/c29fdc39f22a0b1cb9444e59eec058a2.png)
六:strcmp函数----------字符串II码值的比较
1:函数原型
int strcmp(const char* str1, const char* str2)
2:代码例子
void my_strcmp()
{
char str[] = "abcd";
char a[] = "abq";
char b[] = "abc";
char c[] = "abcd";
int num1 = strcmp(a, str);
int num2 = strcmp(b, str);
int num3 = strcmp(c, str);
printf("%d\n", num1);
printf("%d\n", num2);
printf("%d\n", num3);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/9a39951c47ca95173bb2d9729e51ab48.png)
七:strncmp函数----------字符串固定位置上II码值的比较
1:函数原型
int strncmp(const char* str1, const char* str2, size_t num)
2:代码例子
void my_strncmp()
{
char str[] = "abcd";
char a[] = "abq";
char b[] = "aba";
char c[] = "abcd";
int num1 = strncmp(a, str, 3);
int num2 = strncmp(b, str, 3);
int num3 = strncmp(c, str, 3);
printf("%d\n", num1);
printf("%d\n", num2);
printf("%d\n", num3);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/b6ad01a472f92fbac14b9c3a29166ac8.png)
八:strstr函数----------查找字符串
1:函数原型
char *strstr(const char *str1, const char *str2)
2:代码例子
void my_strstr()
{
char str[] = "abcdefg";
char a[] = "abc";
char b[] = "def";
char c[] = "higk";
char* num1 = strstr(str, a);
char* num2 = strstr(str, b);
char* num3 = strstr(str, c);
printf("%s\n", num1);
printf("%s\n", num2);
printf("%s\n", num3);
}
3:输出结果
![](https://i-blog.csdnimg.cn/blog_migrate/33867cbecd4ff2abb8874e06bb9ac2f3.png)