簡單的問題。我將以前由別人編寫的代碼導入到eclipse中。我得到的錯誤: 「未定義參考`ceilf'」「未定義參考`ceilf'」
當我使用celif。在我看來,celif假設包含在我的ile中包含的math.h庫中。但是,當我打開/usr/include/math.h文件時,沒有看到定義的ceilf方法。事實上,據我所知,我的redhat部署中的math.h文件都沒有ceilf方法。任何想法定義任性的ceilf方法?由於這些代碼可以工作,甚至可以在其他地方編譯,所以問題必須與我的配置相關,而不是代碼本身。
ps。我可以使用常規的ceil方法。我考慮過只是轉而使用它,但在程序的關鍵路徑中效率會更低。是的,我知道不成熟的優化是邪惡的,但我總是出於好奇而問爲什麼我會有錯誤。我看不出爲什麼我的math.h文件不會污染它。
編輯:: 謝謝你解釋爲什麼我找不到ceilf功能,我理解這個問題。但是,我不知道如何安撫日食。我試着按照建議設置編譯器選項來使用std = c99,並且不刪除錯誤。事實上,我認爲eclipse只是使用我的Makefile來完成構建,而make文件不會拋出異常。有什麼我可以做,讓編輯認識到我有定義的文件?
'ceilf'符合C99。如果你正在編譯一個較舊的標準,那個函數將不會在那裏。嘗試使用-'std = c99'進行編譯。 –