第3章 预处理与语句.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 预处理与语句

C++语言程序是由若干个文件组成的,文件又是由若干个函数组成的,而函数便是由若干个语句组成。每条语句实现一个操作,若干个语句实现一种功能。 C++语句的预处理功能是指C++语言源程序中可以包含使用的各种编译命令,而这些编译命令由于它们是在程序被正常编译之前执行的,故称为预处理命令(或指令)。这些命令所实现的功能称为预处理功能。 预处理命令是编译命令,它不是语句,不要用分号结束。 文件包含命令 条件编译命令 宏定义命令 文件包含命令格式如下: #include 文件名 或者 #include 文件名 文件名以尖括号()括起是指那些由系统提供的并放在指定子目录中的头文件;文件名以双括号()括起是指那些由用户自己定义的放在当前目录或其他目录下的头文件或其他源文件。 一条文件包含命令只能包含一个文件。若想包含多个文件,则必须用多条文件包含命令。 在被包含的文件中还可以使用文件包含命令,文件包含命令可以嵌套使用。 包含不宜太多。 条件编译命令是用来定义某些编译内容要在满足一定条件下才参与编译,否则将不参与编译。因此,利用条件编译命令可以使同一个源程序在不同的编译条件下产生不同的目标代码。 利用条件编译可在调试程序时增加一些调试语句,以达到跟踪的目的。当程序调试好后,重新编译时,再让调试语句不参与编译。 (1) 格式一 #ifdef 标识符 程序段1 #else 程序段2 #endif (2) 格式二 #ifndef 标识符 程序段1 #else 程序段2 #endif (3) 格式二 #if 产量表达式1 程序段1 #elif 产量表达式2 程序段2 #else 程序段3 #endif 宏定义命令用来将一个标识符定义为一个字符串。该标识符被称为宏名,被定义的字符串称为替换文本。 (1) 简单的宏定义 #define 宏名 字符串 一个标识符被宏定义后,该标识符便是一个宏名。在程序中出现的是宏名。在该程序被编译时,先将宏名用被定义的字符串替换,这称为宏替换,替换后才进行编译。宏替换是简单的代换。 使用简单的宏定义可以定义符号常量,但在C++语言中,常用const来定义符号常量。两种方法是有区别的,其主要区别有: ① const将产生一个具有类型的符号,用#define命令仅产生文本替换,而不管内容是否正确。 ② 使用const可以定义一个局部常量,使其作用域局限在一个函数体内。而用#define定义的常量,尽管在某个函数体内,但它的作用域是从定义时开始,直到使用#undef取消其定义时为止;如果不取消其定义,则直到整个文件结束。 ③ 使用const定义常量是一个说明语句,以分号结束;而用#define定义常量是一个预处理命令,不能用分号结束。 (2) 带参数的宏定义 #define 宏名(参数表) 宏体 参数表中可以有一个参数,也可以有多个参数,多个参数用逗号分隔。在替换时,宏体中与参数表中相同的标识符的字符序列将被程序中引用这个宏定义时提供的与该标识符对应的字符序列所替换。 在宏定义时出现的参数称为形参,在程序中引用宏定义时出现的参数称为实参。在宏替换时,将用实参来替换宏体中所出现的形参。 例3.5 分析下列程序的输出结果。 #include iostream.h void main() { int b(5); #define b 2 #define f(x) b*(x) int y(3); coutf(y+1)endl; #undef b coutf(y+1)endl; #define b 3 coutf(y+1)endl; } C++语言提供了丰富的语句,这些语句足以组成结构化程序设计所需要的3种基本控制结构:连续结构、选择结构和循环结构。 C++语言所提供的语句包括如下几种: 表达式语句和空语句; 复合语句; 选择语句; 循环语句; 转向语句。 C++语言中任何一个表

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档