前提・実現したいこと
会社の研修中にint型変数にシングルクォーテーションで囲った数字を
代入していた人がいたのですが、以下のワーニングが出るのみで、
コンパイルは通っておりました。
warning: multi-character character constant
このような使い方はしない認識ではありますが、
説明することが出来ませんでした。
出力結果については文字コードに対応した値が'1' = 0x31、'2' = 0x32であり、
その値がそのまま出力されているというのは分かるのですが、
そもそも、シングルクォーテーションで囲われた中に2文字以上の文字を
書くということは定義されている動作なのでしょうか?
該当のソースコード
C
1 int a = '12'; 2 printf("出力結果\n[%x]\n", a); 3 4出力結果 5[3132]
以上、宜しくお願いします。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/24 03:02
2019/10/24 03:44
2019/10/29 01:11
2019/11/08 05:18 編集