#ifndef和#define的区别

一、使用场景不同:

#ifndef使用场景为:

1、头文件中使用,防止头文件被多重调用。

2、作为测试使用,省去注释代码的麻烦。

3、作为不同角色或者场景的判断使用。

#define使用场景:

宏定义

二、含义不同:

#ifndef表示ifnotdefine。

#define表示define。

扩展资料:

#ifndef起到的效果是防止一个源文件两次包含同一个头文件,而不是防止两个源文件包含同一个头文件。

而编译时,这两个C文件要一同编译成一个可运行文件。

把头文件的内容都放在#ifndef和#endif中。不管头文件会不会被多个文件引用,都要加上这个。

一般格式是这样的:

#ifndef <标识>#define <标识>............#endif<标识>

在理论上来说可以是自由命名的,但每个头文件的这个“标识”都应该是唯一的。

标识的命名规则一般是头文件名全大写,前后加下划线,并把文件名中的“.”也变成下划线,如:

#ifndef_STDIO_H_#define_STDIO_H_......#endif.

推荐学习:c语言视频教程

更多相关文章

  1. c语言程序是从源文件第一条语句开始执行的,这句话是错的吗
  2. c语言源程序文件的后缀是什么?
  3. c语言文件打开方式有哪些
  4. c语言如何读取txt文件内容?
  5. c语言源程序经过编译后,生成文件的后缀是什么?
  6. c程序编译后生成什么文件
  7. c语言的标识符允许使用关键字吗?
  8. c++源程序文件的扩展名是什么
  9. c语言文件的扩展名是什么

随机推荐

  1. android 获取路径目录方法以及判断目录是
  2. 【Android Training视频系列】第3讲 Supp
  3. android之自定义带图片的title
  4. android broadcastReceiver生命周期及两
  5. Android studio开发找不到HttpClient问题
  6. android 数字键盘使用
  7. [Android]Kernel的下载和编译
  8. 马达 vibrator的android的timed_output实
  9. android中从图库中选取图片
  10. 与屏幕有关的设置:禁止横竖屏切换;横竖屏切