作者eric231 (嘻嘻雷梦)
看板C_and_CPP
标题[问题] 常数隐藏
时间Sun Oct 8 10:44:32 2017
开发平台(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):
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.10.22.117
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1507430675.A.54E.html
※ 编辑: eric231 (101.10.22.117), 10/08/2017 10:46:40
1F:推 jerryh001: 移至宣告 10/08 11:09
2F:→ james732: 会不会是上面有什麽if(n)def所以被跳过了? 10/08 18:52
3F:推 IhateOGC: google gcc -D=1234 10/09 16:17
4F:→ laladeer: 楼上大大,我什麽都找不到阿 10/09 23:45
6F:→ kingofsdtw: 他应该是指这个吧,不过这种coding sytle通常 10/10 09:24
7F:推 kingofsdtw: 会顺便export to enviorment方便追踪 10/10 09:29
8F:→ eric231: 结果这常数是在 makefile里编译 10/11 19:08
9F:推 LPH66: 所以那就是三楼提的 -D 参数了 10/11 21:12
10F:→ LPH66: 这个参数在 VC 同样是 /D 参数, 语法也几乎相同 10/11 21:14
13F:推 LPH66: 这样说勉强正确, 但是 92 行的↓这一段 10/13 06:09
14F:→ LPH66: -DCMBS_BUF_SIZE=$(CMBS_BUF_SIZE) 10/13 06:09
15F:→ LPH66: 才是把这个值传给编译器的地方, 不然它就只限定在 makefile 10/13 06:09
16F:→ LPH66: 里面了 10/13 06:10