如何做#include宏并从C ++中的命令行中获取宏值

时间:2017-09-15 11:02:52

标签: c++

#define MACRO 

int main () {

#include MACRO
}

上面有伪代码。 MACRO值我正在从命令行中查询,如

g++ -DMACRO="x.h"

错误显示

#include expects "FILENAME" or <FILENAME>

2 个答案:

答案 0 :(得分:2)

问题很可能是你的命令环境删除了参数中的双引号,你需要转义引号:

$ g++ -DMACRO=\"x.h\"

答案 1 :(得分:0)

删除#define MACRO, 这与命令行参数中MACRO的定义冲突。