第8章 编译预处理 编译预处理是指,编译时,首先对编译预处理命 令进行处理,然后再将预处理后的中间结果进行编译, 以得到目标代码。 教学目的: 掌握#define、#include的用法和用途; 了解条件编译的用途。 2024/10/28
2024/10/28 1 第8章 编译预处理 编译预处理是指,编译时,首先对编译预处理命 令进行处理,然后再将预处理后的中间结果进行编译, 以得到目标代码。 教学目的: 掌握#define、#include的用法和用途; 了解条件编译的用途
教学内容: 8.1*宏定义与符号常量 8.2*文件包含 8.3条件编译 本章要点 本章作业与上机实践 2024/10/28 2
2024/10/28 2 教学内容: 8.1* 宏定义与符号常量 8.2* 文件包含 8.3 条件编译 本章要点 本章作业与上机实践
8.1*宏定义与符号常量 在进行文本编辑时,“替换”是一个很有用的功 能。C语言编译预处理程序也提供类似的功能: 在源程序中,允许用一个标识符(称为宏名)来 表示一个语言符号字符串;编译预处理时,用“语言 符号字符串”替换所有“宏名”。 在C语言中,“宏”分为无参数的宏(简称无参 宏)和有参数的宏(简称有参宏)两种。 2024/10/28 3
2024/10/28 3 8.1* 宏定义与符号常量 在进行文本编辑时,“替换”是一个很有用的功 能。C语言编译预处理程序也提供类似的功能: 在源程序中,允许用一个标识符(称为宏名)来 表示一个语言符号字符串;编译预处理时,用“语言 符号字符串”替换所有“宏名”。 在C语言中,“宏”分为无参数的宏(简称无参 宏)和有参数的宏(简称有参宏)两种
8.1.1无参宏 1.定义 宏定义命令 #define宏名字符串 遵循标识符命名规则 常数、表达式、格式串等 2。预处理操作一 宏展开:用字符串替换所有 宏名。 2024/10/28 4
2024/10/28 4 8.1.1 无参宏 1.定义 #define 宏名 字符串 2.预处理操作——宏展开:用字符串替换所有 宏名。 宏定义命令 遵循标识符命名规则 常数、表达式、格式串等
「案例8.1]输入圆的半径,求圆的周长、面积和 球的体积。要求:使用无参宏定义圆周率。 2024/10/28 5
2024/10/28 5 [案例8.1] 输入圆的半径,求圆的周长、面积和 球的体积。要求:使用无参宏定义圆周率