[1808] Re:char hoge = 'A';
投稿者:774RR
2012/03/14 14:32:29
まあついでに言うと
getchar()=='ア' も getchar()=='a' も「本質的には」間違っているわけで。
getchar() は [unsigned char 型として取り込み] [int 型に変換] なので、
返却される文字の値は char 型としての値ではなく unsigned char 型としての値となるため
getchar()==(unsigned char)('ア') や getchar()==(unsigned char)('a') としておかないと
言語仕様と不一致になってしまう、と判断すべきでしょう。
これではあまりにもウザイので =='a' のような判断を許すべく
多く使われる基本文字については非負と決めているのだと思われますです。
非負ならば (unsigned char) にキャストしても、しなくても、値が同じなので。