预处理蓝调有治愈吗?

我知道我可以用预处理器在特定情况下用-E选项吐出输出.对于生成代码,这个预处理器输出是有害的.例如,我有一个4gl应用程序,Informix将其转换为C,这反过来会吐出一个可怕的丑陋的混乱.

我想要的是一个编辑器,允许我指定什么预处理器值有效,并只显示相关的代码.我有一些非常基本的工作,Vim匹配#ifdef和#endif,但代码充满了更高级的结构,如#ifndef,#if和#else.更糟糕的是,这些构造在逻辑上更复杂,我不认为我的Vim脚本技能足以让我得到我想要的.例如:

#if DLEVEL > 5
    #define SIGNAL  1
    #if STACKUSE == 1
        #define STACK   200
    #else
        #define STACK   100
    #endif
#else
    #define SIGNAL  0
    #if STACKUSE == 1
        #define STACK   100
    #else
        #define STACK   50
    #endif
#endif
#if DLEVEL == 0
    #define STACK 0
#elif DLEVEL == 1
    #define STACK 100
#elif DLEVEL > 5
    display( debugptr );
#else
    #define STACK 200
#endif

包括定义一个表达式求值器,如果我想解决它.这必须是一个解决的问题!如果您有Vim建议或其他建议,请告诉我们.

解决方法

Eclipse CDT编辑器基于您声明为活动的宏,突出显示代码.你可能想检查一下.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...