strcpy,strcat,strcmp,三者都是库函数,在使用前都需要用头文件#include<string.h>。
strcpy
用处:
具有复制功能,将源指向的 C 字符串复制到目标指向的数组中,包括终止 null 字符(并在该点停止),也就是一个字符串覆盖另一个字符串
注:此函数具有越界的风险,在用a覆盖b时一定要确保b的大小要大于等于a
格式:
char * strcpy ( char * destination, const char * source );
例如:
strcpy了两个字符串一个是abc 一个是cd,strcpy(abc,bc),结果就是bc
代码:
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[] = "hello bit";
char arr2[] = "hello abc";
strcpy(arr2, arr1);
printf("%s", arr2);
return 0;
}
//输出结果为hello bit
strcat
用处:
该字符主要用于追加,就是将一个字符串放到另一个字符串的结尾
注:此函数在运用时容易越界,慎用
格式:
char * strcat ( char * destination, const char * source );
例如:
abc和ab被strcat,结果就是abcab
代码:
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[20] = "hello";
char p[] = "world";
strcat(arr1, p);
printf("%s", arr1);
return 0;
}
//输出结果为hello word
strcmp
用处:
用来比较两个字符串大小。
注:他的比较方式不是通过长度来比较大小的而是,通过开始比较每个字符串的第一个字符。如果它们彼此相等,则继续以下对,直到字符不同或达到终止 null 字符。
格式:
int strcmp ( const char * str1, const char * str2 );
结果:
str1<str2返回值是一个负数
str1=str2返回值是0
str1>str2返回值是一个正数
例如:
"abc"和“cd”通过strcmp比较的话“cd”就比“abc”要大,返回一个负数
代码:
#include<stdio.h>
#include<string.h>
int main()
{
int ret = strcmp("abc", "cd");
printf("%d", ret);
return 0;
}
//返回值为-1