[問題] 常數隱藏

作者: eric231 (嘻嘻雷夢)   2017-10-08 10:44:32
開發平台(Platform): (Ex: Win10, Linux, ...)
visual studio2015
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
目前有拿到一個大型專案,本來是在dos下執行 目前想把他轉成圖形介面,想先用Qt建好
在把.c檔一個一個拉進來,但是有發現有一個常數找不到定義的地方,如下圖紅色框起來
的地方,當我在常數旁右鍵點選"尋找所有參考 "卻可以看到2560, 常數名稱是 CMBS_BUF
_SIZE,當我在專案裡搜尋卻找不到2560,請問會是哪些原因
https://i.imgur.com/3Z6Ho4s.jpg
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
作者: jerryh001   2017-10-08 11:09:00
移至宣告
作者: james732 (好人超)   2017-10-08 18:52:00
會不會是上面有什麼if(n)def所以被跳過了?
作者: IhateOGC (我討厭)   2017-10-09 16:17:00
google gcc -D=1234
作者: laladeer (laladeer)   2017-10-09 23:45:00
樓上大大,我什麼都找不到阿
作者: kingofsdtw (不能閒下來!!)   2017-10-10 09:23:00
https://goo.gl/ECncym他應該是指這個吧,不過這種coding sytle通常會順便export to enviorment方便追蹤
作者: eric231 (嘻嘻雷夢)   2017-10-11 19:08:00
結果這常數是在 makefile裡編譯
作者: LPH66 (-6.2598534e+18f)   2017-10-11 21:12:00
所以那就是三樓提的 -D 參數了這個參數在 VC 同樣是 /D 參數, 語法也幾乎相同
作者: eric231 (嘻嘻雷夢)   2017-10-12 11:04:00
先貼程式碼 MAKEFILE,在89行的地方定義 https://ideonehttps://ideone.com/xWIYNJ
作者: LPH66 (-6.2598534e+18f)   2017-10-13 06:09:00
這樣說勉強正確, 但是 92 行的↓這一段-DCMBS_BUF_SIZE=$(CMBS_BUF_SIZE)才是把這個值傳給編譯器的地方, 不然它就只限定在 makefile裡面了

Links booklink

Contact Us: admin [ a t ] ucptt.com