-1

我需要能够在字符串中转换大小写,这样"Hello"就变成了"hello". 最终,我需要比较它们。

我将如何转换:

char *string = "HEllO";

到字符串"hello"

4

2 回答 2

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!
}
于 2012-04-04T23:44:38.753 回答
2

只需内联执行此操作。

   char string[] = "Hello";
   char * ptr;

   for (ptr = string; *ptr != '\0'; ++ptr)
   {
       *ptr = tolower(*ptr);
   }
于 2012-04-04T23:49:26.930 回答