编译预处理与文件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
YES原作用域
• #und宏e#fd展可e开f终in:e止va宏rO=名U( 8T0作#+u4用np0d)r域*ein2ft;f(Y“EHSello,World”);
• 宏格展例式开##v:d:adere=f预fiiL#nnEe编ueNnG译WLdTEeI时DHNfT*G,2H用#m{T;…dHa宏宏e…8xf0(i名)n体W..eI替DTY换HE+S宏40名0 ---不Y作E语S新法作检用域查
• 文件信息用系统定义的名为FILE的结构体描述
• FILE定义在stdio.h中
English
V§I. 1A0n.s1w宏er定s T义o Exercises
宏体可缺省,表示宏名 定义过或取消宏体
Book 3 Unit 5
• 一般形式: #define 宏名 [宏体]
• 功能:用指定标识例符(#宏de名fin)e代替YE字S符序1列(宏体)
• •
定作如义用位域例###置:ddd从#ee#ved:ffadfii定任iernnen=ffeeeiiL意义nnEee(命NYNP一GEWILO令TS般EIDHNm{}到在T*3G…102aH.文1Ti;函…n4H(件18.)数(.50W9结外2ID6束面TH)+40 )
二进制形式
二进制文件特点: 存储量小、速度快、便于存放中间结果
New
Horizon
College
VI. Answers To Exercises
English
Book 3 Unit 5
▪ 文件处理方法
• 缓冲文件系统:高级文件系统,系统自动为正在使用 的文件开辟内存缓冲区
• 非缓冲文件系统:低级文件系统,由用户在程序中为 每个文件设定缓冲区
或 #include “文件名”
▪ 处理过程:预编译时,用被包含文件的内容取代该预处理 命令,再对“包含”后的文件作一个源文件编译
#include “file2.c” A
file1.c
B file2.c
file2.c A file1.c
New
Horizon
College
VI. Answers To Exercises
• 引号如宏中展开的:内va容ifr(=与x=80=宏+Y4E名}0S相*)2;同也p不rin置tf(换“correct!\n”);
• •
宏宏例定定展#例宏义义开de展后中可fpi#开n:rd使嵌iene:tf用套eefiipMn(fll“(ssre必Ax,i2een=*XtPii=要不Pfff(1II((“=)xx的能2%M==*3==Pf括A递\.N0nI1X=)4”号O归+%,1P)1p5f(0I\rp9*ni2nr”)pi)tn,;fr3(ti.n“f1(ct“4foe(1“rr5rre9eor*crr2(o!t\!)rn\;)!n”\n”);)”;);
缓冲文件系统: 非缓冲文件系统:
程序 输入文件缓冲区
指令区
程序数据区 用a 户数据区
磁盘文件 磁盘
缓冲区输出文件缓冲区
New
Horizon
College
VI. Answers To Exercises
English
Book 3 Unit 5
§10.4 文件类型指针
▪ 文件结构体FILE
• 缓冲文件系统为每个正使用的文件在内存开辟文件信 息区
New
Horizon
College
VI. Answers To Exercises
English
第Biblioteka Baidu讲 编译预处理与文件
➢ 宏定义 ➢ “文件包含”处理 ➢ C文件概述 ➢ 文件类型指针 ➢ 文件的打开与关闭 ➢ 文件的读写
Book 3 Unit 5
New
Horizon
College
VI. Answers To Exercises
English
Book 3 Unit 5
编译预处理
作用:对源程序编译之前做一些处理,生成扩展C 源程序
种类
• 宏定义 #define • 文件包含 #include • 条件编译 #if--#else--#endif等
格式:
• “#”开头 • 占单独书写行 • 语句尾不加分号
New
Horizon
College
English
▪ 被包含文件内容
• 源文件(*.c) • 头文件(*.h)
▪ 文件包含可嵌套
宏定义 数据结构定义 函数说明等
file3.c file2.c
A
Book 3 Unit 5
file1.c
#include “file2.c” #include “file3.c”
A
B
file1.c
file2.c
New
Horizon
College
VI. Answers To Exercises
English
Book 3 Unit 5
文本文件特点: 存储量大、速度慢、便于对字符操作
如 int型数10000
0010011100010000 内存存储形式
ASCII形式 0011000100110000001100000011000000110000 0010011100010000
C file3.c
New
Horizon
College
VI. Answers To Exercises
English
Book 3 Unit 5
§10.3 C文件概述
▪ 文件:存储在外部介质上数据的集合,是操作系统 数据管理的单位
▪ 文使件用数分据类文件的目的
12•、 、按数 不文据同件文程件序的的可逻改以辑动访结不 问构引 同起 一:程 数序 据的 文改 件动 中的——数程据序—与—数数据据共分享离
New
Horizon
College
English
Book 3
VI. Answers To E<x>er直ci接se按s标准目录搜索
Unit 5
§ 10.2 文件包含“可”指定路先径在当前目录搜索,再搜索标准目录
▪ 功能:一个源文件可将另一个源文件的内容全部包含进来
▪ 一般形式: #include <文件名>
3、能– 长记期录保文存件程:序由运具行有的一中定间结数构据的或记结录果组数成据(定长和不定长) – 流式文件:由一个个字符(字节)数据顺序组成
• 按存储介质:
– 普通文件:存储介质文件(磁盘、光盘等) – 设备文件:非存储介质(键盘、显示器、打印机等)
• 按数据的组织形式:
– 文本文件: ASCII文件,每个字节存放一个字符的ASCII码 – 二进制文件:数据按其在内存中的存储形式原样存放