-4
執行計算說我有下列兩個變量:使用權力
CLOCK_RATE_A =2;
CPU_TIME_A = 10;
將下面的代碼片允許我來執行計算10 *(2 * 10^9),並將結果指定到新的變量?
CLOCK_CYCLES_A = CPU_TIME_A * (CLOCK_RATE_A * pow(10, 9));
執行計算說我有下列兩個變量:使用權力
CLOCK_RATE_A =2;
CPU_TIME_A = 10;
將下面的代碼片允許我來執行計算10 *(2 * 10^9),並將結果指定到新的變量?
CLOCK_CYCLES_A = CPU_TIME_A * (CLOCK_RATE_A * pow(10, 9));
這取決於你的數據類型。如果pow
是而不是標準C庫pow
函數並且定義爲返回int
,而您的其他類型是int
那麼您將在某些平臺上溢出int
類型。
(注意pow(10, 9)
是非常接近int
極限的32位的平臺上。)
然而,如果pow
是按照標準實施(即返回一個浮點型),則表達式
CPU_TIME_A * (CLOCK_RATE_A * pow(10, 9))
將在浮點計算,你應該設置CLOCK_CYCLES_A
成爲double
類型,或者轉換爲64位整數,如果你的平臺和編譯器有一個。
你試過了嗎?你爲什麼不呢? – Maroun
是的,它會... –
在編寫代碼時,你的大寫鎖定有什麼問題嗎? –