文字定数はint
C では型を持ちます。
ここで、私のマシンのローカル文字セットが Windows Latin-1 ( http://www.ascii-code.com/ ) であるとします。これは 256 文字セットであるためchar
、 のような単一引用符の間は 0 から 255 の間'x'
の値にマップされます。 int
?
プレーンchar
がsigned
私のマシンにあると仮定し、次のコードを検討してください。
char ch = 'â'
if(ch == 'â')
{
printf("ok");
}
整数の昇格ch
により、タイプの負の数量に昇格されint
(先頭にゼロがあるため) â
、正の数量にマップさok
れると印刷されません。
しかし、私は何かが欠けていると確信しています。助けてもらえますか?