第章編铎预处理 第12章编译预处理 12.1宏定义 22文件包含 23条件编译 BACK
第 12 章 编 译 预 处 理 第 12章 编译预处理 12.1 宏定义 12.2 文件包含 12.3 条件编译
第章編铎预处理 121宏定义 121.1不带参数的宏定义 定义形式: # define宏名宏体 宏名是一自定义标识符,宏体是一字符串,在程序 中可用宏名代表宏体
第 12 章 编 译 预 处 理 12.1 宏定义 12.1.1 不带参数的宏定义 定义形式: #define 宏名 宏名是一自定义标识符,宏体是一字符串,在程序 中可用宏名代表宏体
第章編铎预处理 例如,用P代表3.1415926,用PR代表 printf,宏 定义如下: (1)# define pi3.1415926 (2)# define PR printf 程序中凡是出现3.1415926的地方,都可以以PI出 现,凡是出现 printf的地方,都可以以PR出现
第 12 章 编 译 预 处 理 例如,用PI代表3.1415926,用PR代表printf, 宏 定义如下: (1) #define PI 3.1415926 (2) #definee PR printf 程序中凡是出现3.1415926的地方,都可以以PI出 现, 凡是出现printf的地方,都可以以PR出现
第章編铎预处理 例12-1利用宏定义求圆的周长和面积。 /*程序12-1,利用宏定义求圆的周长和面积* define p3.1415926 t definer l0 main (float 1, S; 1=2.0*PIR; S=PIR*R: printf("周长=%f,面积=%fn",1,s)
第 12 章 编 译 预 处 理 例 12-1 利用宏定义求圆的周长和面积。 /* 程序12 - 1,利用宏定义求圆的周长和面积 */ #define PI 3.1415926 #define R 1.0 main( ) {float l, s; l=2.0*PI*R; s=PI*R*R; printf(″周长=%f, 面积=%f\n″ , l, s); }
第章編铎预处理 上面程序在编译前将进行宏展开,宏展开以后 变为: main() float l, S 1=2.0*3.1415926*1.0; S=3.1415926*1.0*1.0; printf("周长=%,面积%fn",l,s);
第 12 章 编 译 预 处 理 上面程序在编译前将进行宏展开,宏展开以后 变为: main( ) {float l, s; l=2.0*3.1415926*1.0; s=3.1415926*1.0*1.0; printf(″周长=%f, 面积=%f\n″ , l, s); }