中易网

#ifndef #endif 是头文件的表示吗?

答案:5  悬赏:80  
解决时间 2021-01-17 18:00
  • 提问者网友:绫月
  • 2021-01-17 06:25
#ifndef #endif 是头文件的表示吗?
最佳答案
  • 二级知识专家网友:执傲
  • 2021-01-17 06:37
这个是C语言或C++语言条件编译的表示方法。并不一定用于头文件。
其形式为
#ifndef MACRO_NAME
codes;
#endif

其含义为,当MACRO_NAME这个宏没有被定义的时候,codes部分的代码才会被编译,否则codes部分将被忽略。
为了避免头文件被重复引用,在头文件中一般会加入类似于
#ifndef XXXX
#define XXXX
codes
#endif
这样的代码。其中XXXX这个宏名由头文件名衍生而来。如a.h,XXXX可以定义为_A_H_。
当头文件被第一次引用时,XXXX未定义,codes部分被编译,同时定义宏XXXX。当同一源文件第二次引用该头文件时,XXXX已经被定义了,codes部分不会被二次编译,从而避免重复引用。
全部回答
  • 1楼网友:几近狂妄
  • 2021-01-17 10:09
#include “头文件”
我主要是在头文件里声明函数,定义宏
其它的我就不知道了~
  • 2楼网友:玩家
  • 2021-01-17 08:56
不是头文件,是选择编译
  • 3楼网友:duile
  • 2021-01-17 08:02
#ifndef标识符
程序段1
#else
程序段2
#endif

它的功能是,如果标识符没有被#define命令定义过则对程序段1进行编译;否则对程序段2进行编译。如果没有程序段2(它为空),本格式中的#else可以没有,即可以写为:
#ifndef标识符
程序段
#endif
  • 4楼网友:低音帝王
  • 2021-01-17 07:10
条件定义
#ifndef 翻译过来是:if not define
即这句话紧接的宏名假如没有被定义的话;那么执行下面所写的内容,一直到#endif结束
如果没有定义_STACK_H就执行下面的代码,反之则不执行
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息