收藏 分享(赏)

计算机C语言—第九章.ppt

上传人:gnk289057 文档编号:10249209 上传时间:2019-10-25 格式:PPT 页数:11 大小:31KB
下载 相关 举报
计算机C语言—第九章.ppt_第1页
第1页 / 共11页
计算机C语言—第九章.ppt_第2页
第2页 / 共11页
计算机C语言—第九章.ppt_第3页
第3页 / 共11页
计算机C语言—第九章.ppt_第4页
第4页 / 共11页
计算机C语言—第九章.ppt_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、第九章 编译预处理 C语言提供了一些以#开头的指令,如:#define #include 等。 这些指令是在编译以前就事先进行处理的,因而称为“编译预处理”指令。 可以用编译预处理指令实现以下三种功能:1) 宏定义2) 文件包含3) 条件编译,91 宏定义1、不带参的宏定义 用一个指定的标识符(宏名)代表一个字符串。 一般形式: #define 标识符 字符串 如:#define PI 3.1425926 有了这一宏定义后,程序中凡是用到3.1425926的地方都可以以宏名PI出现。,例:定义一个宏名来代表一个参数。 #define PI 3.1425926 main() float r=2,

2、c,s; c=2*PI*r; s=PI*r*r; 系统在对程序进行编译以前,首先将所有的编译预处理指令进行预处理,对本例来说,就是将程序中所有的宏名PI还原成3.1425926, 宏展开。,例:定义一个宏名来代表一个数据个数。 #define N 100 main() int aN,i; float s=0;for(i=0;iN;i+)scanf(“%d”, 宏名N-符号常量,可以作为数组说明的长度。 方便修改参数。,例:定义一个宏名来代表一个计算公式。 #define PI 3.1425926 ; #define AREA PI*r*r main() r=3,s;s=AREA;printf(

3、“n %f”,s); 注意:系统对宏定义的预处理是一个字符串的还原过程,不要把宏名看成一个整体。,注意以下程序的运行结果: #define F x+y main() int x=3,y=5,z;z=2*F;printf(“n %d”,z); ,2、带参的宏定义 宏定义也可以带参数,其一般形式为: #define 宏名(参数表) 字符串 如:#define S(a,b) a*barea=S(3,2); 定义宏名S代表矩形面积,参数a,b为边长。 宏展开过程:,92 文件包含处理在一个源文件中将另一个源文件的内容包含进来。 文件包含指令的一般形式:#include “文件名” 或 #include

4、 ,#include “file2.c”,A,file1.c,A,B,B,file1.c,file2.c,例: #include “math.h” main() float a,b,c,s,area;scanf(“%f%f%f”,#include “f.h” main() printf(“n%f”,f1(3.0); printf(“n %f”,fac(10); float f1(float r) return(PI*r*r); float fac(int n) int i; float s=1; for(i=1;i=n;i+) s*=i; return(s); ,#define PI 3.1415926 float f1(float r); float fac(int n);,f.c,f.h,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报