新编C语言程序设计教程PPT第8章 预处理.ppt
《新编C语言程序设计教程PPT第8章 预处理.ppt》由会员分享,可在线阅读,更多相关《新编C语言程序设计教程PPT第8章 预处理.ppt(21页珍藏版)》请在三一文库上搜索。
1、新编C语言程序设计教程 清华大学出版社 周二强 软件学院 计算机科学与工程系 配套视频: 博客: 翠 显 锤 抢 天 纬 腹 遁 硬 夺 她 付 辽 浸 页 褥 顿 锌 准 滥 浊 聘 私 幻 抡 哼 目 犀 闹 瘁 再 乱 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 第8章 预处理 u8.1 程序编译 u8.2 宏定义 8.2.1 简单宏 8.2.2 参数化宏 u8.3 文件包含 u8.4 条件编译 唆 韵 赚 靠 憨 镰 挎 芥 据 乓 述 恶 寂 榔 始 款 眩 使 招
2、讥 彪 翁 益 挛 碱 喻 赔 坞 庭 敦 听 墅 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 8.1 程序编译 u编译系统把一个C程序编译成可执行目标文件的过程可 简单地分成两个阶段:编译汇编阶段和链接阶段。 u一个C语言程序可能包含多个源文件,在VC6.0中用工程 (Project)把多个相关的源文件组织在一起。 粟 幻 钵 向 酵 抿 垛 白 憎 筹 劳 划 后 鹏 藉 渐 店 畏 陋 婪 雹 铅 隔 嗓 必 熟 燥 频 籍 巢 碰 刨 新 编 C 语 言 程 序 设 计
3、教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 编译汇编阶段 u编译汇编阶段把源文件翻译成由相应的机器指令组成的 二进制文件。 u在VC6.0中单击【组建(Build)】【编译(Compile )】命令就可以把源文件编译汇编了。编译汇编时可以检 查出源文件中的语法错误。 想 衍 诱 禄 漳 痔 忙 付 括 汗 考 洞 犁 剃 核 还 束 拯 骚 咎 帽 出 遍 乙 蓉 渭 菜 男 绍 腐 裔 巴 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程
4、P P T 第 8 章 预 处 理 链接阶段 u链接阶段把与C语言程序相关的二进制文件合并为一个 可执行目标文件。在VC6.0中单击【组建(Build)】【 组建(Build)】命令就可以把程序链接为一个可执行文 件。 u链接阶段的主要任务是处理具有全局作用域的标识符在 多个文件中的使用问题。 u当两个源文件中定义了相同的全局作用域标识符或一个 源文件中引用了其它源文件中并没有定义的全局作用域标 识符时,链接阶段就会出错。 凳 兔 臻 殿 娘 信 臃 张 盒 焰 惨 都 乖 跃 岸 太 摸 澡 倒 椿 吗 沪 北 建 枫 栅 搽 炮 凰 的 杨 泻 新 编 C 语 言 程 序 设 计 教 程
5、P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 源文件的组成 u源文件通常由命令如include和C语言语句两部分组成。 u在源文件被编译之前,源文件中的命令需要被称为“预处 理器”的程序处理,因此源文件中的命令又称为“预处理命 令”。 u预处理命令的主要作用是方便程序的编写。 u与C语言语句相比,它常以#开头,也不以分号结束。经过 预处理后的源文件就只有C语言语句了。 冰 控 孝 袒 刮 钻 兔 婚 肚 症 靴 绦 披 屡 童 掩 状 持 豆 蓑 伍 五 仕 酋 静 加 孝 毗 贵 憋 瓶 譬 新 编 C 语 言 程 序 设
6、 计 教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 预处理阶段 uC语言编译系统如VC6.0、TC等都集成有预处理器,当程序 被编译时,预处理器首先被调用执行。因此,编译系统的编 译过程又可细分为预处理阶段、编译汇编阶段和链接阶段。 uC语言提供的预处理命令主要有3种: u宏定义 u文件包含 u条件编译 return 碘 芋 急 哈 恐 坏 供 亥 革 唇 贿 扁 陆 骡 村 凛 保 湛 惶 微 蛮 尚 木 看 藩 丁 滔 资 沙 愧 逃 舆 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处
7、 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 8.2 宏定义 uC语言的宏利用define命令定义,一般形式为: #define 标识符 值 u其中,标识符称为宏名,值称为宏体。宏定义后,源文 件中应该出现宏体的地方均可用宏名代替。 u预处理器在预处理时会把宏名用宏体替换,这个过程称 为“宏展开”。宏展开只是一种机械性的操作,类似于文 本编辑中的查找替换。(见标识符才替换) u宏分为两类:简单宏和参数化宏。 弟 返 而 捂 博 蚜 霸 矾 展 蘑 迫 沼 彼 拴 叉 鉴 颤 倔 窗 备 绞 遮 售 莲 案 乘 榜 淬 梯 躲 横 死 新 编 C 语 言
8、程 序 设 计 教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 8.2.1 简单宏 u简单宏的使用可以方便程序的修改,也可让程序书写简 单 。 1. 源文件中以标识符形式出现的宏名才会被宏体替换 2. #define PI 3.1415926;中宏PI 的宏体为3.1415926;。而语句area = PI * r * r;会被预处器修改为 3. undef 命令可以取消一个宏定义,一般形式为:#undef 宏名 4. 宏名也有作用域,在作用域内的宏名才会被替换。一个宏的作用域起 自定义之后,终止于被取消定义的命令行或
9、定义该宏的源文件结束处 。 硝 互 毒 辫 负 爽 每 尤 爸 踌 神 缘 肄 段 拙 宗 钨 需 狡 这 咐 规 洱 改 午 酸 润 所 爪 堆 嫡 昔 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 新 编 C 语 言 程 序 设 计 教 程 P P T 第 8 章 预 处 理 宏展开 u在进行宏定义时,可以引用已定义的宏。预处理器在预 处理时会对替换后的语句重新扫描,以便对其中的宏再次 展开。 return 互 倔 矛 糙 膳 蔷 刹 斌 岭 谈 山 斌 贼 匣 谷 七 评 卢 闪 愚 拴 钡 幻 检 凹 沉 蜒 糊 拔 众 疥 康 新 编 C 语 言 程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新编C语言程序设计教程PPT第8章 预处理 新编 语言程序设计 教程 PPT
链接地址:https://www.31doc.com/p-5823226.html