首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >-D宏的优先级和#定义宏5

-D宏的优先级和#定义宏5
EN

Stack Overflow用户
提问于 2013-08-12 11:08:34
回答 1查看 265关注 0票数 1

大家好,大家好,我正在VisualVISUAL6.0IDE上编程,我的问题是:我尝试从命令行定义宏,首先我做了以下操作:project->settings C++命令定义,然后输入了这个宏:-DHELLO="HELLO!,“当我从源代码中使用它时,我输入了:

代码语言:javascript
复制
#ifdef HELLO
HELLO;
#endif

在此之前一切都还好。

但是我的问题是宏--这些都是参数,所以我如何设置带有参数的宏,第二个问题是如何从源代码中扩展它?

任何帮助都是非常感谢的。我花了很多时间在谷歌和搜索,阅读电子书,但这没有帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-12 11:42:58

似乎这是不可能的。

如果您查看一下Microsoft文档,/D选项的构造如下:

代码语言:javascript
复制
/Dname[= | # [{string | number}] ]

由于添加parantheses似乎是不可能的,我不可能用这个命令行选项创建类似函数的宏.

注意:奇怪的是,我尝试了Visual,我的intellisense将它看作类似于函数的宏,所以代码中没有可见的错误(代码下面没有红线),但是当到编译的时候,我得到:

代码语言:javascript
复制
error C3861: 'MACRO_TEST': identifier not found 

定义类型:

代码语言:javascript
复制
/D"MACRO_TEST( tst )= tst" // or -D"MACRO_TEST( tst )= tst"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18185456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档