如何判断一段程序是由C编译还是由C++编译
文章目录
如果编译器在编译cpp文件,那么_Cplusplus就会被定义,如果是一个c文件在被编译,那么_STDC_就会被定义。_STDC_是预定义宏,当它被定义后,编译器将按照ANSIC标准来编译C语言程序。 所以,可以采用如下程序示例判断。
|
|
编写C与C++兼容的代码所需的宏如下:
|
|
在上例中,_cplusplus是cpp中的自定义宏,当定义了这个宏时,其表示这是一段cpp的 代码。也就是说,上面代码的含义为如果这是一段cpp的代码,那么加入extern “C"和}处理其中的代码。
文章作者 Forz
上次更新 2017-09-05