2

以下のコード スニペットは、文字列を小文字に変換するために使用されます。

int main()
{
    unsigned char s[] = "AbS.d_";

    tolower(s);
    printf("%s\n", s);

    return 0;
}

私は次のように出力を得ています:

AbS.d_

文字列が変換されないのはなぜですか?

4

2 に答える 2

5

tolowerint を取り、下げた int を返します。

これはうまくいくはずです:

int i=0;
for(i=0; s[i]; i++)
{
    s[i]=tolower(s[i]);
}
于 2012-08-27T16:07:55.407 に答える
5

tolowerパラメータとして文字型を取りますが、文字列を使用します。配列を実行し、tolower各文字を呼び出す必要があります。

于 2012-08-27T16:04:35.737 に答える