全国计算机等级考试实用应试教程二级C语言第13章编译预处理和动态存储分配.pptxVIP

  • 3
  • 0
  • 约2.11千字
  • 约 11页
  • 2017-05-27 发布于重庆
  • 举报

全国计算机等级考试实用应试教程二级C语言第13章编译预处理和动态存储分配.pptx

全国计算机等级考试实用应试教程二级C语言第13章编译预处理和动态存储分配

本章重点 13.1 编译预处理 13.2 动态存储分配 ;13.1 编译预处理 13.1.1 宏替换 1.无参数的宏定义   宏定义是指用一个指定的标识符(即名字)来代表程序中一个字符串。它的一般形式为: #define 宏名 字符串 或 #define 宏名 例如: #define SIZE 10   标识符SIZE称为宏名,此命令执行后,预处理程序对源程序中的所有名为SIZE的标识符用10来替换,此过程就称为“宏替换”。 ;  其中,“#”表示这是一条预处理命令,“define”为宏定义命令,“宏名”为一个合法的标识符,“字符串”可以是常数、表达式或语句,甚至可以是多条语句。  说明: (1)宏定义与变量定义含义不同,它只作字符替换,并不分配内存空间,也不能认为是赋值。 (2)宏定义是用宏名代替一个字符串,是一种机械的置换,不作任何语法检查。 (3)宏定义结尾不必加分号。如果加了分号,则被认为是字符串的一部分,即在预处理时,分号也被一起替换。 (4)替换文本中也可以包含已定义过的宏名。 ;( 5)宏名的有效范围从定义之后到本源文件结束,出了这个文件,宏名便失却了作用 (6)若宏名出现在一对双引号中,将不会产生宏替换。例如,如果ADD是已经定义的宏名,则不能用与它相关的替换文本来替换   printf(“ADD”)中的ADD。 (7)宏定义还可以

文档评论(0)

1亿VIP精品文档

相关文档