我需要能够在字符串中转换大小写,以便"Hello"
变为"hello"
。最终,我需要对它们进行比较。
我将如何转换:
char *string = "HEllO";
到字符串"hello"
?
答案 0 :(得分:3)
首先,您的字符串未正确声明,它应该是:
char *string = "Hello";
现在,要转换为小写,请尝试以下方法:
char *lowercase(const char *str)
{
int length = strlen(str);
char *dup = malloc(length + 1);
strcpy(dup, str);
for (int i = 0; i < length; i++)
{
dup[i] = tolower(dup[i]);
}
return dup; // remember to free when done!
}
答案 1 :(得分:2)
只需执行此内联。
char string[] = "Hello";
char * ptr;
for (ptr = string; *ptr != '\0'; ++ptr)
{
*ptr = tolower(*ptr);
}