基于不等式约束的unifdef

时间:2018-06-09 18:12:25

标签: c c-preprocessor

给出以下C源代码

#ifdef FOO
int bar = 1;
#endif
#if FOO == 0
int x = 0;
#elif FOO == 1
int x = 1;
#elif FOO == 2
int x = 2;
#endif

我可以预处理源代码(例如使用unifdef / coan),好像FOO未定义,完全定义或定义为特定值(coan -DFOO=1 ...会将代码重写为{ {1}})。

但是,对于我想要预处理的一些变量(例如int bar = 1; int x = 1;)我不知道确切的值,但我知道要过滤掉哪些值。 理想情况下,我可以运行_MSC_VERcoan -DFOO!=0来删除不匹配的部分,但保留尚未评估的coan -DFOO>0

是否有任何预处理器可以处理更高级的约束?

0 个答案:

没有答案
相关问题