阅读量:0
在C语言中,比较字符数组通常是通过比较它们所指向的字符串的内容来完成的。你可以使用 strcmp
函数来实现这一点。strcmp
是C标准库 <string.h>
中的一个函数,其原型如下:
int strcmp(const char *s1, const char *s2);
这个函数比较两个以空字符(null terminator)结尾的字符串 s1
和 s2
,并返回以下值:
- 如果
s1
和s2
相等,则返回0。 - 如果
s1
在字典顺序上位于s2
之前,则返回一个负数。 - 如果
s1
在字典顺序上位于s2
之后,则返回一个正数。
下面是一个简单的示例,展示了如何使用 strcmp
来比较两个字符数组:
#include <stdio.h> #include <string.h> int main() { char array1[] = "hello"; char array2[] = "world"; char array3[] = "hello"; int result1 = strcmp(array1, array2); int result2 = strcmp(array1, array3); if (result1 < 0) { printf("array1 is less than array2\n"); } else if (result1 > 0) { printf("array1 is greater than array2\n"); } else { printf("array1 is equal to array2\n"); } if (result2 == 0) { printf("array1 is equal to array3\n"); } else { printf("array1 is not equal to array3\n"); } return 0; }
这段代码首先定义了三个字符数组,然后使用 strcmp
来比较它们。输出结果将显示 array1
和 array2
以及 array1
和 array3
之间的关系。