文字列の大文字と小文字を変換できる必要があるため"Hello"
、"hello"
. 最終的には、それらを比較する必要があります。
どのように変換しますか:
char *string = "HEllO";
文字列に"hello"
?
まず、文字列が正しく宣言されていません。次のようになります。
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!
}
これをインラインで実行するだけです。
char string[] = "Hello";
char * ptr;
for (ptr = string; *ptr != '\0'; ++ptr)
{
*ptr = tolower(*ptr);
}