說,我有沒有C預處理器處理浮點數學常數
#define A 23.9318;
#define B 0.330043;
#define C 5.220628;
我想做
const unsigned result = (unsigned)(0x01000000 * (A * B/C)); // unsigned is 32 bit
我希望的是有一個與浮點的固定十進制表示結果計算。
我不能預先組合A,B,C在一起,因爲他們的定義不是我的代碼的一部分,我需要 它工作,如果他們改變。
在大多數情況下,用分號結束'#define'不是一個好主意。 – alk
是的你是對的。代碼中沒有這種方式。大部分我都在問結果的精確度。 C預處理器是否將A B C部分以浮動方式完成,直到演員陣容。 –
預處理器將簡單地用'23.9318;'和'B'替換'A' ......等等。 – alk