前回(2017/12/15)の内容 [2] : 一般のキャスト(型変換) 前回(2017/12/15)の内容 [2] : 一般のキャスト(型変換) 型変換 : 特定な型の値を別の異る型の値に変換する仕組み 型変換の実行 : 三通り (代入/キャスト/昇格) 代入 ( 変数 = 式 ) : 左辺の「式」の値は、「変数」の型に変換されて代入 (関数への実引数渡しや return も代入の一種) キャスト : 値の前にキャスト演算子「(型記述)」を先行してその値の型を変換する(明示的な強制型変換) 昇格 : 型が混在する計算では、暗黙の内に型の変換(型の昇格)が行われる (一般の)キャスト(型変換) キャスト演算子「(型)」を先行して「型変換」が行える 一般に「型変換」を行うと、「データそのもの」も変化するのが普通 例 : (int) 1.5 -> 1 / (double)1 -> 1.0 型の広さ : 表現可能な範囲の事 double > int > char 広い方から狭い方に型変換すると、情報が失われてしまうので注意(危険) 型の昇格 : 暗黙の内に自動的に行われる型の変換 異る型の混在する式では、(必要なら)「型の昇格」がおきる : 3.0/2 -> 3.0/2.0 -> 1.5 「型の昇格」は一般に「型の広い(より多くの数が表現できる)方」に行われる(ので安全)