
第11章 编译预处理命令 2025年4月2日
2025年4月2日 第 11 章 编译预处理命令

第11章编译预处理命令 目录 宏定义述 3 文件包含 冈✉D
第11章 编译预处理命令 目 录 宏定义述 1 3 文件包含

第11章编译预处理命令 宏定义述 0 预处理命令是在编译之前,由预处理 程序进行处理的一组命令。 0 预处理命令均以#开头,命令末 尾不加分号。 如 #define P13.1415926 0 #include ☒AD
第11章 编译预处理命令 预处理命令是在编译之前,由预处理 程序进行处理的一组命令。 预处理命令均以#开头,命令末 尾不加分号。 如 #define PI 3.1415926 #include 宏定义述 1

第11章编译预处理命令 宏定义述 一、不带参数的宏定义 格式: #define宏名替换文本 如#define P13.1415926 功能: 系统预处理时,将用替换文本替换程序中的 所有宏名(字符串中的宏名除外)。 网☑D
第11章 编译预处理命令 宏定义述 1 一、不带参数的宏定义 格式: #define 宏名 替换文本 如 #define PI 3.1415926 功能: 系统预处理时,将用替换文本替换程序中的 所有宏名(字符串中的宏名除外)

第11章编译预处理命令 例81宏定义举例。 #include #define PI 3.14159 mainO {float s,r,v; scanf("%f",&r); S=PI*r*r; v=4.0/3*PI*r*r*r; printf("%of %f n",s,v); M✉D
第11章 编译预处理命令 例8.1 宏定义举例。 #include #define PI 3.14159 main() { float s,r,v; scanf("%f",&r); s=PI*r*r; v=4.0/3*PI*r*r*r; printf("%f %f\n",s,v); }

第11章编译预处理命令 带参数的宏定义 格式: #define宏名(形参表) 替换文本 如#define S(x,y)x*y 功能: 先用替换文本替换程序中的宏名,再用实参 替换形参。 宏替换是一种机械死板的替换,不能在替 换文本中随意添加括号。 网☑
第11章 编译预处理命令 二、带参数的宏定义 格式: #define 宏名(形参表) 替换文本 如 #define S(x,y) x*y 功能: 先用替换文本替换程序中的宏名,再用实参 替换形参。 宏替换是一种机械死板的替换,不能在替 换文本中随意添加括号

第11章编译预处理命令 #include #define S(x,y)x*y main( float a,b,c; a=20;b=10; c=S(a+b,a-b); printf("c=%fn",c);) 替换过程为: S(a+b,a-b)→x*y→a+b*a-b →20+10*20-10→210 网☒D
第11章 编译预处理命令 #include #define S(x,y) x*y main( ) { float a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%f\n",c);} 替换过程为: S(a+b,a-b)→x*y → a+b*a-b →20+10*20-10 →210

第11章编译预处理命令 将每个形参及整个替换文本用圆括号括起来。 例 #include #define S(x,y)((x)*(y)) main() float a,b,c; a=20;b=10; c=S(a+b,a-b)月 printf("c=%fn",c);
第11章 编译预处理命令 将每个形参及整个替换文本用圆括号括起来。 例 #include #define S(x,y) ((x)*(y)) main( ) { float a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%f\n",c); }

第11章编译预处理命令 文件包含命令 1、格式: #include 〈文件名〉 或 #include"文件名” 2、功能: 系统预处理时,将用被包含文件的内容 取代该include命令。 如 #include
第11章 编译预处理命令 文件包含命令 1、格式: #include 或 #include "文件名" 2、功能: 系统预处理时,将用被包含文件的内容 取代该include命令 。 如 #include

第11章编译预处理命令 文件包含命令 #include“file2.c” file2.c B A A file2.c filel.c filel.c M☒D
第11章 编译预处理命令 #include “file2.c” file1.c file2.c file1.c file2.c A B A 文件包含命令