《C语言》课程资源_C语言_11.编译预处理

预处理命令 是在编译之前,由预处理程序进行处理的一组命 令。 预处理命令均以#开头,命令末尾无分号。 例如: #define PI 3.1415926 #include
预处理命令 是在编译之前,由预处理程序进行处理的一组命 令。 预处理命令均以#开头,命令末尾无分号。 例如: #define PI 3.1415926 #include

不带参数的宏定义 格式:#define宏名替换文本 例如: #define PI 3.1415926 功能:系统进行预处理时,将用替换文本替换程 序中的所有宏名(字符串中的宏名除外)
格式:#define 宏名 替换文本 例如: #define PI 3.1415926 功能:系统进行预处理时,将用替换文本替换程 序中的所有宏名(字符串中的宏名除外) 。 不带参数的宏定义

【例】宏定义举例。 #include #define PI 3.14159 mainO float s,r,v; scanf("%f",&r); S=PI*r*r; v=4.0/3*PI*r*r*r; printf("s=%f,v=%fn",s,v);
【例】宏定义举例。 #include #define PI 3.14159 main() {float s,r,v; scanf("%f",&r); s=PI*r*r; v=4.0/3*PI*r*r*r; printf("s=%f,v=%f\n",s,v); }

带参数的宏定义 格式:#define宏名形参表)替换文本 例如: #define S(x,y)x*y 功能:先用替换文本替换程序中的宏名,再用实 参替换形参
格式:#define 宏名(形参表) 替换文本 例如: #define S(x,y) x*y 功能:先用替换文本替换程序中的宏名,再用实 参替换形参。 带参数的宏定义

注意: 宏替换是一种机械死板的替换,不能在替 换文本中随意添加括号
注意: 宏替换是一种机械死板的替换,不能在替 换文本中随意添加括号

#include #define S(x,y)x*y main() int a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%d n",c); 替换过程为: S(a+b,a-b)→x*y→a+b*a-b →20+10*20-10→210
#include #define S(x,y) x*y main( ) {int a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%d\n",c); } 替换过程为: S(a+b,a-b)→x*y → a+b*a-b →20+10*20-10 →210

故应将每个形参及整个替换文本用圆括号括起来。 #include #define S(x,y)((x)*(y)) main() int a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%d n",c);
故应将每个形参及整个替换文本用圆括号括起来。 #include #define S(x,y) ((x)*(y)) main( ) {int a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%d\n",c); }

文件包含命令 格式:#include 或 #include"文件名" 功能: 系统预处理时,将用被包含文件的内容取 代该includei命令。 例如: #include
文件包含命令 格式: #include 或 #include "文件名" 功能: 系统预处理时,将用被包含文件的内容取 代该include命令 。 例如 : #include

注意: 一个includei命令只能指定一个被包含文件
注意: 一个include命令只能指定一个被包含文件
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言》课程资源_C语言_jiegouti.ppt
- 《C语言》课程资源_C语言_hanshu.ppt
- 《C语言》课程资源_C语言_14.文件.ppt
- 《C语言》课程资源_C语言_13.位运算.ppt
- 《C语言》课程资源_C语言_12.结构体与共用体.ppt
- 《C语言》课程资源_C语言课件_C语言课件第04章选择程序.ppt
- 《C语言》课程资源_C语言课件_C语言课件第03章顺序程序.ppt
- 《C语言》课程资源_C语言课件_C语言课件第02章数据与运算.ppt
- 山东理工大学:《JAVA语言程序设计》课程教学课件(PPT讲稿,J2EE WEB,JSP)第7章EL语言2016-4-13.ppt.ppt
- 山东理工大学:《JAVA语言程序设计》课程教学课件(PPT讲稿,J2EE WEB,JSP)第6章 创建Web监听和过滤程序.ppt
- 山东理工大学:《JAVA语言程序设计》课程教学课件(PPT讲稿,J2EE WEB,JSP)第5章 Servlet技术.ppt
- 山东理工大学:《JAVA语言程序设计》课程教学课件(PPT讲稿,J2EE WEB,JSP)第3章 内建对象.ppt
- 山东理工大学:《JAVA语言程序设计》课程教学课件(PPT讲稿,J2EE WEB,JSP)第2章 JSP页面构成.ppt
- 山东理工大学:《JAVA语言程序设计》课程教学课件(PPT讲稿,J2EE WEB,JSP)第1章 Java Web入门.ppt
- 《JAVA 高级编程》课程实验指导书.doc
- 《IT项目管理》课程教学课件(讲稿)9-团队干系人沟通管理.pdf
- 《IT项目管理》课程教学课件(讲稿)8-软件配置管理.pdf
- 《IT项目管理》课程教学课件(讲稿)7-软件质量管理.pdf
- 《IT项目管理》课程教学课件(讲稿)6-软件项目时间管理v2.pdf
- 《IT项目管理》课程教学课件(讲稿)5-软件项目成本管理.pdf
- 《C语言》课程资源_C语言_5xunhuan.ppt
- 《C语言》课程资源_C语言_7指针.ppt
- 《C语言》课程资源_C语言_8字符串.ppt
- 《C语言》课程资源_C语言_9.函数.ppt
- 《C语言》课程资源_C语言_xunhuan.ppt
- 《C语言》课程资源_C语言_字符串.ppt
- 《C语言》课程资源_C语言_指针1.ppt
- 《C语言》课程资源_C语言_数组.ppt
- 《C语言》课程资源_C语言_数组1.ppt
- 《C语言》课程资源_C语言_数组3.ppt
- 《C语言》课程资源_C语言课件_第1章 引论.ppt
- 《C语言》课程资源_C语言课件_第2章 基本的数据与运算.ppt
- 《C语言》课程资源_C语言课件_第3章 顺序结构.ppt
- 《C语言》课程资源_C语言课件_第4章 选择结构.ppt
- 《C语言》课程资源_C语言课件_第5章 循环结构.ppt
- 《C语言》课程资源_C语言课件_第6章 数组.ppt
- 《C语言》课程资源_C语言课件_第9、10章 函数.ppt
- 《C语言》课程资源_课件ppt_10章函数进一步讨论.ppt
- 《C语言》课程资源_课件ppt_12章结构体01.ppt
- 《C语言》课程资源_课件ppt_13章位运算.ppt
