【发布时间】:2015-04-15 10:01:03
【问题描述】:
正如你所说,它有效。
但是我可以以某种方式构建包含指令的字符串吗? 类似的东西
在.login
setenv REPO "/tmp"
编译
# gcc -D"REPO=${REPO}" source.c
在 source.c 中
#ifdef REPO
#include ${REPO}/my_dir/my_file.h
#endif
谢谢
【问题讨论】:
-
预处理器只是编译时的东西,它在运行时不能做任何事情。它也是与 C 不同的语言,因此不了解 C 变量。
-
但是,您可以通过在命令行上定义宏来修复它,例如
gcc DMY_INCLUDE="$MY_ENV_VAR" my_source.c -
感谢您的回复!我试试
标签: c include environment-variables c-preprocessor