2
我有一個第三方的C代碼,其中有浮點數用浮點數初始化的大型浮點數組。例如:如何輸入用數字初始化的巨型數組的鑄造元素
float myArray[] = {1.2, 2.5, ....}; /*has thousands of elements*/
當我編譯時,我收到警告「截斷從double到float」。我想擺脫這個警告。如果數組的大小是小的(例如,兩個),我可以使用標準型鑄造和如下手動更新的代碼:
float myArray[] = {1.2f, 2.5f};
或
float myArray[] = {(float) 1.2, (float) (2.5)};
然而,由於大量的元件,手動更新是不實際的。我是否必須編寫一個腳本來編輯源代碼,並在數字後面加上「f」,或者是否有一種更簡單的方法來爲整個數組轉換一個簡單的方法?例如:
float myArray[] = (float){1.2, 2.5, ...} /*does not work, issues syntax error*/
嘿,檢查錯誤是否在這一行。因爲我嘗試了類似的任務,但我沒有收到任何警告。 – Balanivash 2011-06-17 09:45:18
我認爲讓一個支持正則表達式的編輯器(有很多)更容易,並用'$ 1f'替換該範圍內的'(\。\ d +)'。 – kennytm 2011-06-17 09:46:41
@Balanivash:我再次嘗試,仍然得到警告。你可能想看看你的編譯器的警告設置。 – Samil 2011-06-17 10:34:00