头文件中的 #ifndef/#define/#endif 干什么用

作用:一个大的软件工程里面,可能多个文件同时包含同一个一个头文件,当这些文件编译链接成一个可执行文件时,就会出现大量重定义的错误。在头文件中实用#ifndef

#define #endif能避免头文件的重定义。

举例说明:

例如要编写头文件sad.h

在头文件开头写上两行:

#ifndef  _SAD_H

#define _SAD_H//一般是文件名的大写

#endif

头文件结尾写上一行:#endif这样一个工程文件里同时包含两个sad.h时,就不会出现重定义的错误了。

分析:第一次包含sad.h时,由于没有定义_SAD_H,条件为真,这样就会包含(执行

)#ifndef _SAD_H和#endif之间的代码,当第二次包含sad.h时前面一次已经定义了_SAD_H,条件为假,#ifndef _SAD_H和#endif之间的代码也就不会再次被包含,这样就避

了重定义了。主要用于防止重复定义宏和重复包含头文件

你可能感兴趣的:(C,/,C++)