[ キャストとは ] 実数型の整数 a = 4.21 があるとします。このaの値の整数部分 だけを扱いたい場合にはどうしたらよいでしょうか。今までに 学んだことから考えると、例えばprintf文中なら printf("aの整数部分の値は、%.0f です。\n"); と書けば、4.21ではなく、4と表示することができます。しかし、 出力以外でも色々な場面でこのような操作が必要になります. そこでキャストという操作を行います。 例えば、aが実数型、bが整数型の変数だとして b = (int)a; とすると、bにはaの少数点以下が切り捨てられた整数が入ります。 このような操作をキャストといいます。キャストには、以下のような 整数型→実数型という操作もあり、この場合にはdには少数以下を0と する実数が入ります。 int c; double d; c = 3; d = (double)c; ※d には4.0が入る。 [ 例 ] 整数型の変数x, yがあるときに、例1ではx / yの答えがおかしく なってしまいます。このような場合にも、例2のようにキャストに よって解決できます。 (例1) int x, y; double ans; x = 2; y = 4; ans = x / y; printf("%d / %d = %.2f", x, y, ans); (例2) int x, y; double ans; x = 2; y = 4; ans = (double)x / (double)y; printf("%d / %d = %.2f", x, y, ans);