齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)编译预处理

膏齊哈尔大学 QIQIHAR UNIVER 编译预处理 @ 多 History 主讲:耿蕊
编译预处理 主讲:耿蕊

编译预处理 1、宏定义 2、文件包含 3、条件编译
编译预处理 1、宏定义 2、文件包含 3、条件编译

1宏定义 History 宏定义就是将一个标识符定义为一串符号,被定义的标识符被称为宏名。 宏定义有两种形式,即不带参数的宏定义和带参数的宏定义。 例如在前面介绍的符号常量就是不带参数的宏定义
1 宏定义 宏定义就是将一个标识符定义为一串符号,被定义的标识符被称为宏名。 宏定义有两种形式,即不带参数的宏定义和带参数的宏定义。 例如在前面介绍的符号常量就是不带参数的宏定义

y1宏定义 ART History (1)不带参数的宏定义 不带参数宏定义的一般形式为: #define宏名 一串符号
1 宏定义 (1)不带参数的宏定义 不带参数宏定义的一般形式为: #define 宏名 一串符号

y1宏定义 【例】不带参数的宏定义应用。 #include "stdio.h" #define M 8 #define N M+M #define N1(M+M) mainO) int k,kl; k=N*N*2; k1=N1*N1*2; printf("k=%d,k1=%d\n",k,k1); } k=88,k1=512
1 宏定义 【例】不带参数的宏定义应用。 k=88,k1=512 #include "stdio.h" #define M 8 #define N M+M #define N1 (M+M) main() { int k,k1; k=N*N*2; k1=N1*N1*2; printf("k=%d,k1=%d\n",k,k1); }

y1宏定义 ART History (2)带参数的宏定义 带参数宏定义的一般形式为: #define宏名形参表)一串符号
1 宏定义 (2)带参数的宏定义 带参数宏定义的一般形式为: #define 宏名(形参表) 一串符号

y1宏定义 History 【例】带参数宏定义的应用。 #include "stdio.h" #define N8 #define MN+1 #define f(x)(x*M) mainO int il,i2; il=f(2); i2=f1+1): printf("%d %d n",il,i2): } 1710
1 宏定义 【例】带参数宏定义的应用。 17 10 #include "stdio.h" #define N 8 #define M N+1 #define f(x) (x*M) main() { int i1,i2; i1=f(2); i2=f(1+1); printf("%d %d\n",i1,i2); }

y2文件包含 History 文件包含是指一个源文件可以将另外一个源文件的全部内容包含进来, 也就是将另外一个文件的内容引入到本文件中。 文件包含的一般形式为: #include"文件名" 或 #include 其中的“文件名”就是待包含的文件,系统给定的函数库一般称为“头 文件”,其扩展名为“h”,用户自编的包含文件也可以用”.c或”.cpp”为 扩展名
2 文件包含 文件包含是指一个源文件可以将另外一个源文件的全部内容包含进来, 也就是将另外一个文件的内容引入到本文件中。 文件包含的一般形式为: #include "文件名" 或 #include 其中的“文件名”就是待包含的文件,系统给定的函数库一般称为“头 文件”,其扩展名为“.h”,用户自编的包含文件也可以用“.c”或“.cpp”为 扩展名

\2文件包含 AR History 下面对文件包含命令进行几点说明: (1)所包含的文件名必须是完整的文件名,扩展名不可以省略,也可以包含路径,例 如:include"E:VCLISTY40.c",代表该文件在E盘VCLIST下,文件名是40.c。 (2)包含命令中的文件名可以用双撇号括起来,也可以用尖括号括起来。二者的区别 是:使用尖括号时,系统到include-子文件夹下搜寻给出的文件;使用双撇号时,系统 首先到当前文件所在的目录中寻找,若找不到再到include目录中去找。 (3)一个包含命令只能指定一个被包含文件,使用多个includer命令可以包含多个文件。 (4)文件包含允许嵌套,即在一个被包含的文件中又可以包含另一个文件
2 文件包含 下面对文件包含命令进行几点说明: (1)所包含的文件名必须是完整的文件名,扩展名不可以省略,也可以包含路径,例 如:#include "E:\\VCLIST\\40.c",代表该文件在E盘VCLIST下,文件名是40.c。 (2)包含命令中的文件名可以用双撇号括起来,也可以用尖括号括起来。二者的区别 是:使用尖括号时,系统到include子文件夹下搜寻给出的文件;使用双撇号时,系统 首先到当前文件所在的目录中寻找,若找不到再到include目录中去找。 (3)一个包含命令只能指定一个被包含文件,使用多个include命令可以包含多个文件。 (4)文件包含允许嵌套,即在一个被包含的文件中又可以包含另一个文件

y2文件包含 History 【例】文件包含的应用。 文件sushu.c的内容如下,是用于实现判断素数的函数,单独保存 成一个源文件。 int prime(int n) int i; if(n<2)return 0; for(i=2;i<-n/2;i++) if(n%i=0)return 0; return 1;
2 文件包含 【例】文件包含的应用。 文件sushu.c的内容如下,是用于实现判断素数的函数,单独保存 成一个源文件。 int prime(int n) { int i; if(n<2)return 0; for(i=2;i<=n/2;i++) if(n%i==0)return 0; return 1; }
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第7单元 指针.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第6单元 函数.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第5单元 数组.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第4单元 循环结构程序设计.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第3单元 选择结构程序设计.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第2单元 顺序结构程序设计.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第1单元 概述(主讲:耿蕊).pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(电子信息工程).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(电气工程及其自动化).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(数学与应用).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(土木工程).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(教育技术).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(物理学).pdf
- 齐齐哈尔大学:《C语言程序设计》课程授课教案(64学时).pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第3章 控制流程 3.2 分支结构.ppt
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第3章 控制流程 3.1 顺序结构.ppt
- 《C++语言程序设计》课程教学资源(学习指导)第2章 数据类型运算符表达式 2.3 其他运算符与表达式.pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第2章 数据类型运算符表达式 2.3 其他运算符.ppt
- 《C++语言程序设计》课程教学资源(学习指导)第2章 数据类型运算符表达式 2.2 算术、关系、逻辑运算符.pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第2章 数据类型运算符表达式 2.2 算术、关系、逻辑运算符.ppt
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第8单元 结构体与共用体.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)位运算.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第9单元 文件.pptx
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)工程计算机制图——建筑施工图.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)AutoCAD图形系统的应用和开发.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)计算机图形技术.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)工程计算机制图——工程制图基础.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH10 排序.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH9 查找表.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH7 图.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH6 树和二叉树.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH5 数组和广义表.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH4 串.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH3 栈和队列.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH2 线性表.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH1 绪论(主讲:殷超).ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)第一章 计算机组成概述.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)HTML网页设计基础.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)PHP网页程序设计.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)第二章 Linux操作系统.ppt