📅  最后修改于: 2023-12-03 14:41:42.126000             🧑  作者: Mango
strcmp()
是 C 语言中一个常用的字符串比较函数。它用于比较两个字符串的大小,并返回一个整数作为比较结果。
int strcmp(const char *str1, const char *str2);
str1
:指向要比较的第一个字符串的指针。str2
:指向要比较的第二个字符串的指针。str1
等于 str2
,则返回 0。str1
小于 str2
,则返回一个小于 0 的整数。str1
大于 str2
,则返回一个大于 0 的整数。#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello";
char str2[] = "World";
int result = strcmp(str1, str2);
if (result == 0) {
printf("str1 等于 str2\n");
} else if (result < 0) {
printf("str1 小于 str2\n");
} else {
printf("str1 大于 str2\n");
}
return 0;
}
输出:
str1 小于 str2
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello";
char str2[] = "Hello";
int result = strcmp(str1, str2);
if (result == 0) {
printf("str1 等于 str2\n");
} else if (result < 0) {
printf("str1 小于 str2\n");
} else {
printf("str1 大于 str2\n");
}
return 0;
}
输出:
str1 等于 str2
strcmp()
函数是区分大小写的。如果需要进行不区分大小写的比较,可以使用 strcasecmp()
函数。strcmp()
函数会比较两个字符串中对应位置上的字符的 ASCII 值的大小。如果两个字符串内容相同,但长度不同,则以较长字符串的长度为准。strcmp()
函数前,请确保传入的字符串是以 null 字符 ('\0'
) 结尾的,即字符串的末尾应该以 '\0'
结束。否则,strcmp()
函数可能会导致未定义的行为。详细的资料可参考 strcmp() - C++ Reference。