#define不起作用

hyhylee 2010-02-15 11:18:21
.c文件,原本是vc6下建立的工程,导入到vs2008.在main函数前面有一些#define的语句

#define NORM 1
#define GLOB 2

int main(int argc,char *argv[])
{
RUNMODE = atoi(argv[1]);
if (!((RUNMODE == NORM) || (RUNMODE == GLOB))){
return(1);
}
}
但是在main里面总是得不到NORM,debug的时候RUNMODE=1,但是NORM的值是:
CXX0017: Error: symblo "NORM" not found
麻烦各位给看一下,多谢了~
...全文
668 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
艾雨伞 2010-08-11
  • 打赏
  • 举报
回复
我用的是vs2003(项目需求),也遇到了跟LZ一样的问题。很是郁闷!
我在stdafx.h里
#define ABC
#define CDE

ABC 是之前自定义的,后来又增加了一个CDE宏,结果CDE死活都无效,总是认为我没有定义它,代码编译都是反过程。结果同样的代码,放在同事机器里,一切ok,No words!

没办法,我只好另找地方#define。。。不知何因!难道是vs的bug?
macrojj 2010-02-16
  • 打赏
  • 举报
回复
楼主的问题解决了吗

大家都觉得没问题啊
facat 2010-02-16
  • 打赏
  • 举报
回复
把出错的那一行删掉重输吧。
我在Code::Block vc6 vc2010里编译了都没问题啊。
wxdcxp 2010-02-16
  • 打赏
  • 举报
回复
建议将出错的代码删除了,重新输入一遍
liubingqian 2010-02-15
  • 打赏
  • 举报
回复
#define NORM 1
1前的空格是不是中文全角的?
yzx714 2010-02-15
  • 打赏
  • 举报
回复
重新建立工程……
PS:VC就是不好用
hyhylee 2010-02-15
  • 打赏
  • 举报
回复
楼上各位不好意思,前面加上个int RUNMODE吧。不是RUNMODE没有定义的问题,我定义了的,只是在帖子里忘记粘了,不好意思。我说了,Debug的时候runmode赋值了第一个启动参数,这个没有问题,问题出在define上,没有值。麻烦各位了~~再给看下可能是什么原因,define没有用
steptodream 2010-02-15
  • 打赏
  • 举报
回复
明明就是RUNMODE 没有定义的问题
布拉格曼 2010-02-15
  • 打赏
  • 举报
回复
楼主阿,你的这个RUNMODE变量,要先定义,后使用,不知道你打算把它当什么对象来处理?
RUNMODE
stardust20 2010-02-15
  • 打赏
  • 举报
回复
我电脑vs2008测的时候是 error C2065: “RUNMODE”: 未声明的标识符
你没有定义这个RUNMODE啊。。。NORM倒可以找到。。。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧