编译c++的时候,编译器自动定义了一个预处理器名字_ _cplusplus,(注意前面有两个下划线)。
因此我们可以根据它来判断程序是否为c++程序,以便有条件的包含代码。
例如:
#ifdef _ _cplusplus
//不错,我们要编译c++
//extern "c"我们在第七章在讲解
extern"c"
#endif
min(int ,int );
在编译c的时候,编译器定义一个_STDC_,当然_ _cpluscplus和_STDC_不会同时被定义的,
另外两个比较有用的名字是_LINE_和_FILE_。其中_LINE_是指已经编译的行数。_FILE_包含正在被编译的文件的名字。
另外两个预定义的名字是:_TIME_和_DATE_它们分别包含被编译文件的时间和日期。
时间的格式为:hh:mm:ss
例如:如果你是在正8点17分编译这个文件,那么时间表示为8:17:00。如果那天刚好为1998年10月23号,那么日期就为:oct23 1998
如果当前的或者文件的名字发生了变化,那么预定义名字_LINE_和_FILE_就会变化,其他的预定义名字在编译期间不会变化的。她们的值也不能被修改