strcmp函數(shù)是C語(yǔ)言中的字符串比較函數(shù),用于比較兩個(gè)字符串的大小。
其函數(shù)原型為:
int strcmp(const char *str1, const char *str2);
參數(shù)str1
和str2
分別為要進(jìn)行比較的兩個(gè)字符串。函數(shù)返回值為整型,具有以下幾種情況:
str1
等于str2
,則返回0。str1
小于str2
,則返回負(fù)數(shù)。str1
大于str2
,則返回正數(shù)。strcmp函數(shù)按照字典順序比較兩個(gè)字符串中相應(yīng)的字符,直到遇到不同的字符或者兩個(gè)字符串的結(jié)尾。比較時(shí),依次比較字符的ASCII值。
例如:
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "hello";
char str2[] = "world";
int result = strcmp(str1, str2);
if (result == 0) {
printf("str1 equals to str2\n");
} else if (result < 0) {
printf("str1 is less than str2\n");
} else {
printf("str1 is greater than str2\n");
}
return 0;
}
輸出結(jié)果為:
str1 is less than str2
上述例子中,“hello"和"world"兩個(gè)字符串進(jìn)行了比較,由于"hello"在字典順序上小于"world”,所以返回了負(fù)數(shù)。