在編程中,經常用到的一個結果轉換就是兩個int類型變量相除的結果為了保留精確度而轉換為float或者double類型,但是這個地方最容易令人犯錯誤的是,如果使用如下的類型轉換方式,轉換時是將兩個int類型變量先相除得到一個int類型結果,再將這個int類型結果轉換為float或者double類型,而不是直接計算保留帶有精確度的結果。
int main () { int x = 50; int y = 12; cout << x / y << endl; cout << (float) (x / y) << endl; cout << (double) (x / y) << endl; cout << (double) x / (double) y << endl; return 0; }
4 4 4 4.16667