1. strcmp
1.1 描述
C 库函数 int strcmp(const char *str1, const char *str2) 把 str1 所指向的字符串和 str2 所指向的字符串进行比较,该函数包含在<string.h>中。
1.2 声明
下面是 strcmp() 函数的声明。
int strcmp(const char *str1, const char *str2)
str1 要进行比较的第一个字符串。
str2 要进行比较的第二个字符串。
该函数返回值如下:
- 如果返回值小于 0,则表示 str1 小于 str2。
- 如果返回值大于 0,则表示 str1 大于 str2。
- 如果返回值等于 0,则表示str1 等于 str2。
例子:
#include <stdio.h>
#include <string.h>
int main ()
{
char str1[15];
char str2[15];
int ret;
strcpy(str1, "abcdef");
strcpy(str2, "ABCDEF");
ret = strcmp(str1, str2);
if(ret < 0)
{
printf("str1 小于 str2");
}
else if(ret > 0)
{
printf("str1 大于 str2");
}
else
{
printf("str1 等于 str2");
}
return(0);
}
结果:
str1 大于 str2
2. strcpy
2.1 描述
C 库函数 char *strcpy(char *dest, const char *src) 把 src 所指向的字符串复制到 dest,该函数包含在<string.h>中。
需要注意的是如果目标数组 dest 不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况。
2.2 声明
下面是 strcpy() 函数的声明。
char *strcpy(char *dest, const char *src)
参数
dest 指向用于存储复制内容的目标数组。
src 要复制的字符串。
返回值
该函数返回一个指向最终的目标字符串 dest 的指针。
例子:
#include <stdio.h>
#include <string.h>
int main()
{
char src[40];
char dest[100];
memset(dest, '\0', sizeof(dest));
strcpy(src, "Hello");
strcpy(dest, src);
printf("最终的目标字符串: %s\n", dest);
return(0);
}
结果:
最终的目标字符串: Hello