第20章预处理-Read.ppt

第20章预处理-Read.ppt

第20章 预处理 通过本章的学习要掌握以下内容: 宏定义的分类; 宏对象的执行机制和适用场景; 宏函数的执行机制和适用场景; 宏函数和函数的区别; 条件编译的3种形式; 文件包含的使用 20.1 宏定义 C语言中的所有预处理命令都以‘#’开头。宏定义是预处理指令的一种,以#define开头。它提供了一种可以替换原码中的字符串的机制。预处理过程中,宏调用会被展开为对应的字符串,这个过程称为“宏展开”。 根据宏定义中是否有参数,可以将宏定义分为有两种,宏对象和宏函数,下面来对它们详细介绍。宏对象即为无参数的宏定义,也称为宏对象,形式如下所示。 #define 宏名 宏对象体 20.1 宏定义 在程序中使用被定义的宏名。宏展开时,会将C代码中的所有宏名替换为宏对象体。例如: 01 #define SIZE 6 02 … 03 int array[SIZE] = {0}; 04 … 预处理后,第3行被替换为: int array[6] = {0}; 20.1 宏定义 宏函数即有参数的宏定义,也称为宏函数,形式如下: #define 宏名(参数列表) 宏函数体 宏展开时,会将宏名及其调用参数替换为宏函数体,同时将宏函数体中使用的参数置换为传入的参数。例如: 01 #define M_PRINT_INT(a) { \ 02 printf” %d”, a}; \ 03 } 04 …

文档评论(0)

1亿VIP精品文档

相关文档