Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C文件的部分预处理_C_C Preprocessor_Template Engine_Preprocessor - Fatal编程技术网

C文件的部分预处理

C文件的部分预处理,c,c-preprocessor,template-engine,preprocessor,C,C Preprocessor,Template Engine,Preprocessor,我正在寻找一个预处理器,它允许对C源文件进行部分预处理。我想做的是跳过某些或全部#include并在命令行(或单独的文件)上定义一些宏,然后预处理器应该只处理我指定的,而忽略其余的 下面是我想做的一个例子: #define FOO #ifdef FOO /* FOO */ #endif #ifdef BAR /* BAR */ #endif 应该翻译成 /* FOO */ #ifdef BAR /* BAR */ #endif 不久前,在我以前的工作中

我正在寻找一个预处理器,它允许对C源文件进行部分预处理。我想做的是跳过某些或全部#include并在命令行(或单独的文件)上定义一些宏,然后预处理器应该只处理我指定的,而忽略其余的

下面是我想做的一个例子:

#define FOO  
#ifdef FOO  
/* FOO */  
#endif  
#ifdef BAR  
/* BAR */  
#endif  
应该翻译成

/* FOO */  
#ifdef BAR  
/* BAR */  
#endif
不久前,在我以前的工作中,我需要一个类似的预处理器,我想我在stackoverflow上找到了一个独立预处理器的链接,但是在搜索了一个小时后,我放弃了。你可能正在寻找,它能够在命令行上提供一组定义(或未定义)的情况下解释
#if
#ifdef
指令

  • coan基于此相关问题中列出的
    unifdef
    实用程序:

  • 还可以查看哪个具有示例调用

您可能正在寻找,它能够在命令行上提供一组定义(或不定义)的情况下解释
\if
\ifdef
指令

  • coan基于此相关问题中列出的
    unifdef
    实用程序:

  • 还可以查看哪个具有示例调用


  • “MichaelWalz”和“UL>实际上,这个问题适用于C和C++。”如果他没有标题为“…C文件”…@ PeTeJ“,但是对象编程是未来”,“对象编程是什么?”如果您指的是OOP,那么只要有意义,也可以在C中应用(并且已经应用)。这是大约30年前的“未来”。@Ron我大致记得B.Stroustrup的一句话,他将支持某种范式/特征的语言与支持某种范式/特征的其他语言区分开来。@Felix Palmen-你必须说最后一句话。我不打算争论。OOP现在的意义远不止对象创建、列表和函数指针。虚拟化、模板和更多内容不容易归档Cc@Ron事实上,这个问题既适用于C又适用于C++。MichaelWalz如果他没有标题为“…C文件”…@ PeTrJ“,但是对象编程是未来的。”——什么是对象编程?如果您指的是OOP,那么只要有意义,也可以在C中应用(并且已经应用)。这是大约30年前的“未来”。@Ron我大致记得B.Stroustrup的一句话,他将支持某种范式/特征的语言与支持某种范式/特征的其他语言区分开来。@Felix Palmen-你必须说最后一句话。我不打算争论。OOP现在的意义远不止对象创建、列表和函数指针。虚拟化多态性、模板以及更多的东西不容易归档到CCM中。谢谢,这正是我要找的程序。向你致意,克里斯汀·汉克斯,这正是我要找的节目。问候你,克里斯蒂安