【发布时间】:2013-05-09 19:15:10
【问题描述】:
如果我想定义编译指示的第一个标识符,我该怎么做?
例如,我需要这样的东西来作为 openmp pragma 工作:
#define FOO omp
#pragma FOO parallel
所以我需要将其解释为:
#pragma omp parallel
我在 Linux 中使用 GCC。从我目前阅读的内容来看,这似乎不受支持。有什么解决方法吗?
【问题讨论】:
-
我不认为预处理器处理编译指示,这意味着没有办法做你想做的事。
-
@JoachimPileborg
#pragma不是像#define或#include一样的预处理器指令吗。它的一切都依赖于编译器吗?预处理器忽略#pragma? -
@JoachimPileborg 我读过很多关于编译指示的东西都依赖于编译器,但从来不知道预处理器根本不处理编译指示。是这样吗?
-
好吧,我知道使用类似:
#define FOO parallel#pragma omp FOO将用作:#pragma omp parallel -
你也许可以使用
_Pragma而不是#pragma
标签: c linux gcc c-preprocessor pragma