字符串判断是否大小写c语言
时间: 2024-09-14 12:03:41 浏览: 36
在C语言中,你可以使用标准库中的函数来判断字符串是否区分大小写。C语言本身是区分大小写的,所以当你在比较字符串时,字符的大小写会被区分开来。如果你想要比较两个字符串是否完全相同(忽略大小写),你可以通过将每个字符串中的大写字母转换为小写字母,或者将小写字母转换为大写字母,然后进行比较。
以下是一个示例代码,展示了如何在C语言中忽略大小写来判断两个字符串是否相同:
```c
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int string_equal_case_insensitive(const char *str1, const char *str2) {
if (str1 == NULL || str2 == NULL)
return 0;
while (*str1 && *str2) {
if (tolower((unsigned char)*str1) != tolower((unsigned char)*str2)) {
return 0; // 字符不相同
}
str1++;
str2++;
}
return (*str1 == 0 && *str2 == 0); // 确保字符串同时结束
}
int main() {
const char *str1 = "Hello World";
const char *str2 = "hello world";
if (string_equal_case_insensitive(str1, str2)) {
printf("两个字符串在忽略大小写的情况下是相同的。\n");
} else {
printf("两个字符串在忽略大小写的情况下是不同的。\n");
}
return 0;
}
```
在这段代码中,`string_equal_case_insensitive` 函数通过 `tolower` 函数将字符串中的每个字符转换为小写,然后比较转换后的字符串是否相等。如果两个字符串在忽略大小写的情况下相等,函数返回1,否则返回0。
阅读全文