C语言 比较两个字符串是否相同
时间: 2024-12-18 08:33:14 浏览: 13
在C语言中比较两个字符串是否相等的方法
在C语言中,比较两个字符串是否相同的常见做法有以下两种方法:
1. **逐字符比较**[^1]:
```c
char str1[] = "Hello";
char str2[] = "World";
if(strcmp(str1, str2) == 0){
printf("The strings are equal.\n");
} else {
printf("The strings are not equal.\n");
}
```
使用`strcmp()`函数比较两个字符串,它会返回0表示相等,非0表示不相等。
2. **先判断长度再逐字符比较**:
```c
if(strlen(str1) != strlen(str2)){
printf("Strings have different lengths, they are not equal.\n");
} else {
int i;
for(i = 0; i < strlen(str1); i++){
if(str1[i] != str2[i]){
break;
}
}
if(i == strlen(str1)){
printf("The strings are equal.\n");
} else {
printf("The strings are not equal because of differing characters at position %d.\n", i);
}
}
```
先通过`strlen()`函数检查长度是否一致,再使用循环逐个字符对比,若找到不同则立即结束并宣告不相等。
阅读全文