欢迎来到天天文库
浏览记录
ID:59422365
大小:278.00 KB
页数:44页
时间:2020-09-19
《C教程之程序结构ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第七章程序结构程序由什么组成?答案1:程序由代码语句组成。正是一行行的代码,组成了一个完整的程序。答案2:程序由函数组成。一个个函数之间的互相调用,最终构建出一个完整的程序。答案3:“程序由文件组成”。7.1源文件和头文件扩展名为.cpp的文件,主要用以实现程序的各种功能,存放函数或数据定义。我们称为源文件或代码文件。扩展名为.h的文件,称为头文件。在头文件里主要写一些函数、数据(包括数据类型的定义)的声明,这样可以在多个.c或.cpp文件内共享这些函数、数据。头文件可以起到“名片夹”的作用。可以通过“file/new”菜单来为某一工程创建不同类型
2、的文件。创建多个源文件示例:编程对给定的正整数n求:1!+2!+…+n!分析:采用多函数、多文件的形式---main.cpp------mainfunc.cpp------assifunc.cpp---voidmain(){intn;……validate(n);qiuhe(n);……}intjiecheng(intn){……}intqiuhe(intn){……}voidvalidate(intn){……}test1---main.cpp---#includeusingnamespacestd;voidmain(){intn;ci
3、n>>n;validate(n);intb=qiuhe(n);cout<<"从1加到"<4、dvalidate(intn)//有效性检查函数定义{if(n>0)return;else{cout<<"输入的数据不是正整数,正在结束程序!";exit(0);}}解决方法1需要在main.cpp中main函数前添加被调函数的声明voidvalidate(intn);intqiuhe(intn);voidmain(){……}需要在assifunc.cpp中添加#includeusingnamespacestd;解决方法2将所有被调函数的声明做成一个头文件然后需要在main.cpp中添加#include“assifunc.h”v5、oidvalidate(intn);intqiuhe(intn);assifunc.hinclude预编译指令预编译:指示C++编译器在正式编译前作些准备工作,预编译指令都以#开头#include指示预编译将包含的头文件的内容附加在程序文件中,以参加编译。如果头文件是C++系统提供的,则位于系统默认路径下,需用尖括号把头文件括起来;如:#include如果是自定义的头文件,则位于当前路径下,需用双引号把头文件括起来。如:#include“mainfunc.h”区别:编译器的路径搜索的顺序不同。“”先到当前路径下找,找不到时到系统6、默认路径下找;<>直接到系统默认路径下找,找不到时提示出错。需要注意的是,用#include包含了相应的头文件,编译步骤可以通过,但若相应的工程路径下没有包含函数定义的源文件,连接步骤会报错。试验删除mainfunc.cpp在一个头文件中可以用include另一个头文件。这会产生一个问题:在编译一个程序文件时,重复包含同一个头文件abc.hxyz.h#includeusingnamespacestd;#include"xyz.h"#include"week.h"#includeusingnamespacestd;#7、include"week.h"f1.cpp#include"abc.h"voidmain(){cout<8、voidmain(){……}……#ifndefWEEK#defineWEEKinta=10;#endif……#ifndef
4、dvalidate(intn)//有效性检查函数定义{if(n>0)return;else{cout<<"输入的数据不是正整数,正在结束程序!";exit(0);}}解决方法1需要在main.cpp中main函数前添加被调函数的声明voidvalidate(intn);intqiuhe(intn);voidmain(){……}需要在assifunc.cpp中添加#includeusingnamespacestd;解决方法2将所有被调函数的声明做成一个头文件然后需要在main.cpp中添加#include“assifunc.h”v
5、oidvalidate(intn);intqiuhe(intn);assifunc.hinclude预编译指令预编译:指示C++编译器在正式编译前作些准备工作,预编译指令都以#开头#include指示预编译将包含的头文件的内容附加在程序文件中,以参加编译。如果头文件是C++系统提供的,则位于系统默认路径下,需用尖括号把头文件括起来;如:#include如果是自定义的头文件,则位于当前路径下,需用双引号把头文件括起来。如:#include“mainfunc.h”区别:编译器的路径搜索的顺序不同。“”先到当前路径下找,找不到时到系统
6、默认路径下找;<>直接到系统默认路径下找,找不到时提示出错。需要注意的是,用#include包含了相应的头文件,编译步骤可以通过,但若相应的工程路径下没有包含函数定义的源文件,连接步骤会报错。试验删除mainfunc.cpp在一个头文件中可以用include另一个头文件。这会产生一个问题:在编译一个程序文件时,重复包含同一个头文件abc.hxyz.h#includeusingnamespacestd;#include"xyz.h"#include"week.h"#includeusingnamespacestd;#
7、include"week.h"f1.cpp#include"abc.h"voidmain(){cout<8、voidmain(){……}……#ifndefWEEK#defineWEEKinta=10;#endif……#ifndef
8、voidmain(){……}……#ifndefWEEK#defineWEEKinta=10;#endif……#ifndef
此文档下载收益归作者所有