[問題] 如何cast才能不失精度
程式如下
size_t m_Size = 10000;
size_t result1 = (1-0.025)*m_Size;
double result2 = (1-0.025)*m_Size;
cout << result1 << endl;
cout << result2 << endl;
BCB 6 的執行結果:
9749
9750
我想要利用轉型的方式使 result1 = 9750
但是一連用了幾個static_cast都無法實現;
即使是將result宣告成搭配cast。
想請問是否有方法能在m_Size為size_t的情況下
使得size_t result1 或 int result1為9750.
謝謝! (除了 result1 = result2; //XD)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.96.63.154
→
12/17 18:45, , 1F
12/17 18:45, 1F
→
12/17 18:45, , 2F
12/17 18:45, 2F
→
12/17 18:52, , 3F
12/17 18:52, 3F
→
12/17 19:42, , 4F
12/17 19:42, 4F
→
12/17 20:17, , 5F
12/17 20:17, 5F
→
12/17 20:18, , 6F
12/17 20:18, 6F
→
12/17 20:38, , 7F
12/17 20:38, 7F
→
12/17 20:39, , 8F
12/17 20:39, 8F
推
12/17 21:51, , 9F
12/17 21:51, 9F
→
12/17 21:57, , 10F
12/17 21:57, 10F
→
12/17 21:58, , 11F
12/17 21:58, 11F
→
12/17 22:01, , 12F
12/17 22:01, 12F
→
12/17 22:35, , 13F
12/17 22:35, 13F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章