《C语言》课程教学课件(PPT讲稿,教程)第11章 编译预处理命令

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

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

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

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

第11章 编译预处理命令例8.1宏定义举例。#include #define PI 3.14159mainOfloat s,r,v;scanf("%f",&r);s-PI*r*r;v=4.0/3*PI*r*r*rprintf("%f%fln",s,v);
第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*ymain()1float a,b,c;a=20; b=10;c=S(a+b,a-b);printf("c=%fln",c);}替换过程为:S(a+b,a-b)→x*y → a+b*a-b20+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=%f\n",c);} 替换过程为: S(a+b,a-b)→x*y → a+b*a-b →20+10*20-10 →210

第11章编译预处理命令将每个形参及整个替换文本用圆括号括起来。例#include #defineS(x,y)((x)*(y))main()float a,b,c;(a=20;b=10;c=S(a+b,a-b);printf("c=%fin",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或"文件名”#include2、功能:系统预处理时,将用被包含文件的内容取代该include命令。如#include<stdio.h)
第11章 编译预处理命令 文件包含命令 1、格式: #include 或 #include "文件名" 2、功能: 系统预处理时,将用被包含文件的内容 取代该include命令 。 如 #include

第11章 编译预处理命令文件包含命令file2.c#include"file2.c"Bfile2.cfilel.cfilel.c
第11章 编译预处理命令 #include “file2.c” file1.c file2.c file1.c file2.c A B A 文件包含命令
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言》课程教学课件(PPT讲稿,教程)第12章 结构体.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第14章 文件.ppt
- 《C语言》课程教学资源(教程讲义)C语言主教材附录.pdf
- 《C语言》课程教学资源(教程讲义)第4章.pdf
- 《C语言》课程教学资源(教程讲义)第5章.pdf
- 《C语言》课程教学资源(教程讲义)C语言第6章.pdf
- 《C语言》课程教学资源(教程讲义)C语言训练教程第1-2章.pdf
- 《C语言》课程教学资源(教程讲义)C语言训练教程第3-4章.pdf
- 《C语言》课程教学资源(教程讲义)C语言训练教程第5-6章.pdf
- 《C语言》课程教学资源(教程讲义)C语言第7章.pdf
- 《C语言》课程教学资源(教程讲义)C语言第8章.pdf
- 《C语言》课程教学课件(PPT讲稿)01—第一章 引论.ppt
- 《C语言》课程教学课件(PPT讲稿)02 第二章 算法.ppt
- 《C语言》课程教学课件(PPT讲稿)03 第三章 数据类型(1)—数据的存储方式.ppt
- 《C语言》课程教学课件(PPT讲稿)04 第三章 数据类型(2).ppt
- 《C语言》课程教学课件(PPT讲稿)05 第三章 数据类型(3).ppt
- 《C语言》课程教学课件(PPT讲稿)06 第四章 顺序结构(1).ppt
- 《C语言》课程教学课件(PPT讲稿)07 第四章 顺序结构(2)—输入输出.ppt
- 《C语言》课程教学课件(PPT讲稿)08—C语言—选择结构——if.ppt
- 《C语言》课程教学课件(PPT讲稿)09——C语言——选择结构——switch——第5章——2.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第10章 函数的进一步讨论.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第9章 函数.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第6章 数组.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第5章 循环结构程序设计.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第2章 基本的数据与运算.ppt
- 《C语言》课程教学课件(PPT讲稿,教程)第1章 引论.ppt
- 《C语言》课程教学资源(教程讲义)C语言程序设计新思路(1-3章).pdf
- 《C语言》课程教学课件(PPT讲稿)第31次课(编译预处理命令 位运算 文件).ppt
- 《C语言》课程教学课件(PPT讲稿)第29次课 结构体.ppt
- 《C语言》课程教学课件(PPT讲稿)第27次课(函数进一步讨论).ppt
- 《C语言》课程教学课件(PPT讲稿)第25次课(函数定义、调用、参数传递、返回值).ppt
- 《C语言》课程资源_智慧树使用手册_学生端使用手册.ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第12章 构造函数(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第13章 面向对象程序设计(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第14章 堆与拷贝构造函数(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第15章 静态成员函数与友元(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第16章 继承(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第17章 多态(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第18章 运算符重载(PPT).ppt
- 《面向对象程序设计》课程教学资源(课件讲稿)第19章 IO流(PPT).ppt
