C 字符串 strcmp() 函数
示例
比较两个字符串以查看哪个更大
char myStr1[] = "ABCD";
char myStr2[] = "ABCE";
int cmp = strcmp(myStr1, myStr2);
if (cmp > 0) {
printf("%s is greater than %s\n", myStr1, myStr2);
} else if (cmp < 0) {
printf("%s is greater than %s\n", myStr2, myStr1);
} else {
printf("%s is equal to %s\n", myStr1, myStr2);
}
尝试一下 »
定义和用法
The strcmp()
函数比较两个字符串并返回一个整数,指示哪个字符串更大。
对于此比较,两个字符串中相同位置的字符将逐个比较,从左侧开始,直到其中一个字符不匹配或到达字符串的末尾。 有三种可能的情况
- 如果在没有发生任何不匹配的情况下到达了两个字符串的末尾,则该函数返回零。
- 在第一次不匹配时,如果第一个字符串中字符的 ASCII 值更大,则该函数返回一个正数。
- 在第一次不匹配时,如果第二个字符串中字符的 ASCII 值更大,则该函数返回一个负数。
The strcmp()
函数在 <string.h>
头文件中定义。
语法
strcmp(const char * str1, const char * str2);
参数值
参数 | 描述 |
---|---|
str1 | 必需。 要比较的字符串之一。 |
str2 | 必需。 要比较的字符串之一。 |
技术细节
返回值 | 一个 int 值,如果第一个字符串更大,则为正数,如果第二个字符串更大,则为负数,如果两个字符串相等,则为 0。 |
---|