.h头文件中的ifndefdefineendif 的作用

    xiaoxiao2021-12-14  17

    主要作用是防止重复引用,比如一个头文件定义如下: #ifndef _HEAD_H_ #define _HEAD_H_ //代码部分 #endif 假如该头文件第一次被引用,_HEAD_H_没有被定义,所以就执行宏定义,直到#endif

    该头文件第二次被引用的时候,_HEAD_H_已经被定义,下面的语句就不会执行

    #define a 10 void foo(); main(){ printf("%d..",a); foo(); printf("%d",a); } void foo(){ #undef a #define a 50 } define在预处理阶段就把main中的a全部替换为10了.

    另外,不管是在某个函数内,还是在函数外,define都是从定义开始知道文件结尾,所以如果把foo函数放到main上面的话,则结果会是50 ,50

    转载请注明原文地址: https://ju.6miu.com/read-964045.html

    最新回复(0)