c语言条件编译include,7.1编译与预处理-include-c学习 | 时刻需

7.1.25文件包含

文件包含是C语言预处理的另一个重要功能,用“#include”来实现,将一个源文件的全部内容包含到另一个源文件中,成为它的一个部分,文件包含的一般格式为:

#include 或者#include “文件名”

两种形式的区别在于:使用尖括号表示在系统头文件目录中查找(由用户在设置编程环境时设置),而不在源文件目录中查找。使用双引号则表示首先在当前的源文件目录中查找,找不到再到系统头文件目录中查找。

演示代码如下图所示:

1、程序的头文件1.h

1.png

2、程序的主题main()函数

2.png

3、运行结果如下:

3.png

补充:“”可以代替所有的<>,反过来却不可以。

文件目录包含简介

4.png

7.1.26文件包含

1、一条include命令只能指定一个被包含文件,若有多个文件要包含,则需用多个include命令。

例如:

5.png

h   2.h需要分别包含。

这样写include 语句:#include   “m1.h,m2.h” 或#include   “m1.h”,”m2.h”

而必须写成:#include   “m1.h”   #include   “m2.h”

2、文件包含允许嵌套,即在一个被包含的文件中又可以包含另一个文件。

下面代码为1.h包含2.h..。Main

函数包含2.h,这样1.h和2.h都包含了

6.png

7.png

3、文件包含语句中被包含的文件通常是以.h 结尾的头文件,这种头文件中的内容多为变量的定义、类型定义、宏定义、函数的定义或说明,但被包含的文件也可以是以.c为扩展名的C语言源文件。

8.png

Include不仅包含头文件.h,也可以包含.c源文件

注意:避免重定义现象。

9.png

7.1.27条件编译

通过某些条件,控制源程序中的某段源代码是否参加编译,这就是条件编译的功能,一般来说,所有源文件中的代码都应参加编译,但有时候希望某部分代码不参加编译,应用条件编译可达到这以目的。

10.png

第一种:

11.png

条件编译示例代码演示

12.png

运行结果如下:

13.png

第二种:

14.png

条件编译示例演示主要代码

M未被定义时:

15.png

执行结果:

16.png

定义M之后,代码如下:

17.png

执行结果:

18.png

没有关机,执行取消。

7.1.28编译及预处理小节

讨论C语言程序编译及预处理的相关内容,C程序的编译分编辑、预处理、编译和链接几个步骤,预处理指令是由预处理器负责执行的,主要有头文件包含、宏定义、条件编译等,经过预处理后,编译器才开始工作,将每个编译单元编译成二进制代码文件,但此时分散的二进制代码文件中的变量和函数没有分配到具体内存地址,因而不能执行,需要链接器将这些二进制代码文件、用到的库文件中相关代码,系统相关的信息组合起来,形成二进制可执行文件。

掌握程序编译链接的过程能帮助理解错误的根源,提高调试的效率,是写出高质量代码的必要条件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值