- 1
- 0
- 约 39页
- 2017-01-02 发布于广东
- 举报
9.1.1 不带参数的宏定义 不带参数的宏定义格式: #define 标识符 字符串 例如:#define PI 3.1415926 其中: “define”为宏定义命令; “标识符”为所定义的宏名,通常用大写字母表示,以便于与变量区别; “字符串”可以是常数、表达式、格式串等。 说明:在程序中用宏名替代字符串,称为宏调用;编译预处理时,将宏名替换为所定义的字符串的过程,称为宏展开。 9.1.2 带参数的宏定义 带参数的宏定义格式: #define 宏名(形参表) 字符串 例如:#define M(y) y*y+3*y 调用格式: 宏名(实参表) 说明:带参数的宏展开是,用宏调用提供的实参字符串,直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。 9.4 本章小结 1. 预处理功能是C语言特有的功能,它是在对源程序正式编译前由预处理程序完成的。 2. 宏定义是用一个标识符来表示一个字符串,这个字符串可以是常量、变量或表达式。在宏调用中将用该字符串代换宏名。 3. 宏定义可以带有参数,宏调用时是以实参代换形参。而不是“值传送”。 4. 为了避免宏代换时发生错误,宏定义中的字符串应加括号,字符串中出现的形式参数两边也应加括号。 5. 文
原创力文档

文档评论(0)