- 2
- 0
- 约2.55万字
- 约 72页
- 2016-12-29 发布于北京
- 举报
第2章 C++语言基础 本章的学习内容 了解C++程序基本结构 了解C++数据类型、运算符及表达式 了解和掌握程序流程控制基本语句 了解和掌握函数的定义和调用方法 2.1 C++程序的基本结构 2.1.1 C++程序示例 【例2.1】 一个简单的C++程序 // 输入一个学生的三门课成绩,计算其加权平均值#include iostream.h //预处理指令 //子函数的引用说明double Average(double score1, double score2, double score3);void main() //程序的主函数 {double score1, score2, score3, average; cout“第一门功课成绩:”; //显示提示信息 cinscore1; //接受用户输入 cout第二门功课成绩:; cinscore2; cout第三门功课成绩:; cinscore3;//调用子函数,用返回值为变量赋值average = Average(score1, score2, score3);cout加权平均分为:average\n; //输出计算结果} // 程序的子函数定义 double Average(double score1, double score2, double score3) {double credit1, credit2, credit3, average; //定义四个双精度型变量 credit1 = 3.0; //给变量赋值credit2 = 4.0;credit3 = 2.0;average = (credit1*score1+credit2*score2+credit3*score3)/(credit1+credit2+credit3); //计算表达式的值,并赋给变量return average; //将变量的值作为函数的返回值,返回给调用者} 2.1.2 C++程序的一般结构 C++源代码文件一般可以分成四个部分:预处理指令、全局说明(包括对象类的定义)、程序的主函数和用户自定义的子函数,如右图所示。一个C++程序由一个或多个源代码文件构成。C++的源代码文件分为两类:头文件(.h)和源程序文件(.cpp)。 下面分别对源代码文件的几个部分进行讨论。 1.预处理命令 在C++程序中,以 #开头的命令叫预处理命令。它们指示编译器在对程序正式编译前对程序进行适当处理,将必要的信息包含进来,然后再对程序进行正式的编译处理。 常用的预处理命令有三类: (1)预处理包含命令#include #include指令是最为常用的预处理指令。在程序执行的过程中,程序经常要使用到编译系统提供的某种标准函数或类库提供的类或用户开发的、存放在其他头文件中的类、结构、变量、常量、函数等。而这些标准函数、类、结构、变量、常量等的说明或定义都保存在相关的头文件(.h文件)中。为了使用这些头文件中定义的类、结构、变量、常量和函数,必须将相应的头文件包含到要使用它们的源程序中。 例如 #include math.h #include iostream.h ……… (2) 条件预处理指令 由于被#include包含的头文件中也可能使用别的#include指令包含别的头文件,因此就可能出现头文件嵌套包含甚至是头文件循环相互调用的情况,导致编译效率低下甚至是编译失败的情况。 例如 //myheadfile1.h #include myheadfile2.h …… //myheadfile2.h #include myheadfile1.h …… 为了避免上述情况的发生,引入了条件预处理指令,用来判断是否已经包含了某个头文件或头文件的某个部分,若已经包含了某个头文件或头文件的某个部分,则跳过其后的包含指令#include ,以避免该头文件重复包含或循环调用的情况。常用的条件预处理指令包括: #ifdef #else #endif #ifndef #else #endif #define 条件预处理指令#ifdef与#ifndef正好相反,当#ifdef后面的标识符已被定义时,条件判断为真,#ifdef和其对应的#endif之间的语句将被执行;而当该标识符未被定义时,编译器将跳过这部分语句。
您可能关注的文档
- 《APQP之控制计划.ppt
- 《AP的诊治指南.ppt
- 《APP给企业带来的好处网络营销必读.ppt
- 《APP行业解决方案.ppt
- 《archit44.ppt
- 《ARM复习提.ppt
- 《ARCVIEW使用指导.ppt
- 《ARM体系结构.ppt
- 《ArcSDE基本原理与配置.ppt
- 《ARM嵌入式系统习题课1.ppt
- 2025年版汽车趋势报告 The 2025 EPA Automotive Trends Report.docx
- 2026年边缘计算开源平台EdgeX Foundry入门与二次开发.docx
- 2026年超声内镜放大内镜早癌诊断AI辅助识别系统临床评价.docx
- 2026年报废汽车回收与再制造逆向物流体系.docx
- 2026年产品碳足迹核算方法学:从摇篮到大门与从摇篮到坟墓.docx
- 2026年城乡要素平等交换双向流动政策创新试点申报材料.docx
- 2026年超导半导体接口电路架构与电平转换驱动器设计.docx
- 2026年财政贴息不再以再贷款支持为前提后的风险防范与合规要点.docx
- 2026年不动产信托登记试点政策对遗嘱信托支持.docx
- 2026年城乡有机废弃物协同处理技术方案.docx
有哪些信誉好的足球投注网站
文档评论(0)