C语言程序设计刘国成张丹彤第五章编译预处理课件教学.pptVIP

  • 0
  • 0
  • 约1.05千字
  • 约 31页
  • 2017-01-01 发布于广东
  • 举报

C语言程序设计刘国成张丹彤第五章编译预处理课件教学.ppt

* * * * C语言程序设计教程 在C语言源程序中,允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。 宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。在C语言中,“宏”分为无参数的宏(简称无参宏)和有参数的宏(简称有参宏)两种。下面分别讨论这两种“宏”的定义和调用。 5.1.1 无参数宏定义 无参宏定义的一般格式为: ? #define 标识符 语言符号字符串 ? 其中:“#”表示这是一条预处理命令;“define”为宏定义命令;“标识符”为所定义的宏名,通常用大写字母表示,以便于与变量区别;“语言符号字符串”可以是常数、表达式、格式串等。在前面介绍过的符号常量的定义就是一种无参数宏定义。此外,常对程序中反复使用的表达式进行宏定义。例如: ? 5.1.1 无参数宏定义 无参宏定义的一般格式为: ? #define M (a*a+3*b) ? 定义标识符M代表表达式(a*a+3*b)。在编写源程序时,所有的(a*a+3*b)都可由M代替,而对源程序作编译时,先由预处理程序进行宏代换,即用(a*a+3*b)表达式去置换所有的宏名M,然后再进行编译。 5.1.2 带参数的宏定义 C语言允许宏带有参数。在宏定义中的参

文档评论(0)

1亿VIP精品文档

相关文档