C语言如何判断字符数组相等
时间: 2023-11-16 20:07:08 浏览: 503
两个字符数组不能直接用 == 进行比较,可以使用 strcmp() 函数来比较两个字符数组是否相等,如果相等则返回0,否则返回一个非0值。示例代码如下:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[] = "Hello";
char str2[] = "World";
char str3[] = "Hello";
if (strcmp(str1, str2) == 0)
{
printf("str1 and str2 are equal\n");
}
else
{
printf("str1 and str2 are not equal\n");
}
if (strcmp(str1, str3) == 0)
{
printf("str1 and str3 are equal\n");
}
else
{
printf("str1 and str3 are not equal\n");
}
return 0;
}
```
输出结果为:
```
str1 and str2 are not equal
str1 and str3 are equal
```
相关问题
C语言怎么判断字符数组相等
在C语言中,判断两个字符数组是否相等,通常需要逐个比较它们的元素是否一一对应相等。下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
int areArraysEqual(char array1[], char array2[]) {
int len1 = strlen(array1);
int len2 = strlen(array2);
// 如果长度不同则直接返回 false
if (len1 != len2) {
return 0;
}
// 使用循环逐个比较每个字符,如果所有字符都相等,则返回 true
for (int i = 0; i < len1; i++) {
if (array1[i] != array2[i]) {
return 0;
}
}
return 1; // 所有字符都相等,返回 true
}
int main() {
char str1[] = "Hello";
char str2[] = "Hello";
if (areArraysEqual(str1, str2)) {
printf("两个字符串相等\n");
} else {
printf("两个字符串不相等\n");
}
return 0;
}
```
C语言判断两个字符数组相等
### C语言中比较两个字符数组是否相等的方法
在C语言中,可以通过多种方式来判断两个字符数组(字符串)是否相等。一种方法是通过逐个字符对比直到遇到终止符 `\0` 来实现自定义函数逻辑[^1]。
另一种更为简便的方式则是利用标准库提供的 `strcmp()` 函数来进行比较操作。此函数会按照字典顺序依次比较两个字符串中的对应字符直至发现不匹配之处或是到达任一串的结尾为止。当两串完全一致时,该函数返回零值;反之则给出非零数值以指示差异的存在[^2]。
下面是基于上述两种思路的具体代码实例:
#### 自定义比较函数
```c
#include <stdio.h>
int main() {
int i = 0;
char str1[100], str2[100];
// 输入两个字符串
scanf("%99s", str1);
scanf("%99s", str2);
// 循环遍历并逐一比较各位置上的字符
while (str1[i] != '\0' && str2[i] != '\0' && str1[i] == str2[i]) {
++i;
}
// 判断最终状态决定输出结果
if (str1[i] == '\0' && str2[i] == '\0') {
printf("Same\n");
} else {
printf("Different\n");
}
return 0;
}
```
#### 使用标准库函数 `strcmp`
```c
#include <stdio.h>
#include <string.h> // 需要引入 string.h 头文件才能使用 strcmp()
int main() {
char str1[100], str2[100];
// 获取用户输入的两个字符串
scanf("%99s", str1);
scanf("%99s", str2);
// 调用 strcmp 进行比较,并依据其返回值得到结论
if (strcmp(str1, str2) == 0) {
puts("Same");
} else {
puts("Different");
}
return 0;
}
```
阅读全文
相关推荐















