我們發現C在使用幻數時會編譯日誌函數,但不會與變量一起使用。有任何想法嗎?爲什麼C不用變量編譯日誌,但用幻數編譯?
0
A
回答
4
因爲您沒有將您的程序鏈接到數學庫和文字,您的編譯器可能使用了內建函數。
隨着gcc
你會得到與文字相同的錯誤。
鏈接以lib數學是這樣的:gcc bla.c -o bla -lm
0
相關問題
- 1. 什麼qmake變量用於Objective-C編譯標誌?
- 2. 爲什麼不編譯編譯錯誤?
- 3. 這是爲什麼用「Is」編譯而不用「IsNot」編譯?
- 4. 爲什麼java編譯但不運行?
- 5. 爲什麼C++編譯器在參數中不使用const時編譯失敗?
- 6. 什麼是「DNS_BLOCK_ASSERTIONS」(C編譯器標誌)?
- 7. 爲什麼這個程序在C++ 14中編譯得很好,但在C++ 11編譯器中不能編譯?
- 8. -fPIC編譯標誌有什麼作用?
- 9. 爲什麼這段代碼不能用MS編譯器編譯?
- 10. 爲什麼這個代碼用eclipse編譯器編譯但不能用javac編譯(maven)
- 11. 爲什麼HotSpots編譯日誌時間與ManagementFactory.getRuntimeMXBean()。getUptime()不同?
- 12. 編譯時爲什麼編譯器不知道局部變量的地址?
- 13. 爲什麼不編譯?
- 14. 爲什麼不能編譯?
- 15. `this.type`:爲什麼不編譯?
- 16. 爲什麼不編譯?
- 17. 爲什麼不編譯?
- 18. 爲什麼不能編譯?
- 19. 爲什麼不編譯?
- 20. 爲什麼不能編譯?
- 21. 爲什麼不編譯?
- 22. C++:爲什麼不能編譯?
- 23. 爲什麼不在Dev C++編譯
- 24. C++編譯問題 - 用cl.exe編譯正常,但不會從Visual Studio 2015編譯
- 25. 爲什麼不用stringWithFormat編譯NSAssert?
- 26. 爲什麼不:extend()用gulp-less編譯?
- 27. 爲什麼我不能用OpenBSD編譯?
- 28. 在Netbeans中編譯C程序,但不能用cmcc編譯gcc
- 29. 使用C++編譯時操作變量
- 30. C++ GCC爲什麼這個sfinae代碼可以用GCC 4.7編譯,但不能用4.8編譯?
您正在尋找「字面常量」一詞。 「幻數」不是「文字常量」的可接受的同義詞。 – Kaz
我的意思是在硬編碼數字中的幻數。 http://www.cplusplus.com/doc/tutorial/constants/顯示文字常量意味着分配給變量的基數爲10的數字。我明白這是正確的嗎?你能解釋一下嗎?謝謝 – Will
從一般意義上講,跨越各種編程語言,文字都是程序本身(而不是運行時輸入)的一部分的任何類型的數據項:字符文字,字符串文字,數字文字甚至是複雜的數據結構文字。常量是程序中具有不變值的表達式。常量可以是符號(定義符號),也可以是文字。文字不一定是恆定的,但當它們不是時,它會產生自修改代碼:改變文字就是改變程序。 – Kaz