C言語

C言語:代入による型変換について

C言語で暗黙的に行われる型変換についてまとめます。今回は最後となります。代入による型変換です。

代入による型変換

この暗黙の型変換は、一番分かりやすいです。単に代入先の型に変換されるだけです。

暗黙の型変換のまとめ

ブログ記事にまとめた暗黙の型変換についてまとめます。この順に型変化が行われます。

3種類の暗黙の型変換について、実際の式での変換は以下の表となります。

表で、i32 は、int で32ビットの幅を持つ符号有り整数とします。u32 は、unsigned int で32ビットの幅を持つ符号無し整数とします。u8 は、unsigned char で8ビットの幅を持つ符号無し整数とします。

unsigne int は、ui という型名に typedef しています。

演算の式汎整数拡張算術型変換代入による変換キャストを使った表現
i32 = i32 + i32;
i32 = u8 + u8;i32 = (int)u8 + (int)u8;
u32 = s32 + u32;u32 = (ui)s32 + u32;
u32 = s32;u32 = (ui)s32;
u32 = u8 + u8u32 = (ui)((int)u8 + (int)u8);
u32 = u32 + u8u32 = u32 + (ui)((int)u8);
i32 = i32 + u32s32 = (int)((ui)u32 + u32);
s32 = u32 + u8s32 = (int)(u32 + (u32)((int)u8));

暗黙の型変換を避けるという意味では、int で書くことが好ましいようです。そのための int 型だと思います。

最後に

C言語の暗黙の型変換についてまとめました。自分自身の勉強にもなりました。

C言語を使いこなしていきましょう!

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA