- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 1
函数与预处理
4.1概述
C++函数的功能是接收一些参数,执行代码,然后向调用者返回一个值。void类型的函数不返回任何值,但其它类型的函数要返回该类型的一个对象。
因为C++语言让编译器在处理函数调用时执行更完全的检查功能,所以函数在使用之前一定要先用函数原型来声明。下面的例子说明sum()函数声明、调用和定义的过程。
【例】sum()函数声明、调用和定义实例。
#includeiostream.h
void main()
{
int a,b,c;
int sum(int,int); // 用原型声明sum()函数
a = 25;
b = 36;
c = sum(a,b); //调用sum函数
coutcendl;
}
int sum(int x,int y) //定义sum()函数
{
int temp;
temp = x+y;
return temp;
}
例4.1 在主函数中调用其它函数
#include iostream
using namespace std;
void printstar(void)
{
cout**********************endl;
}
void print_message(void)
{
coutWelcometo C++!endl;
}
int main()
{
printstar();
print_message();
printstar();
return 0;
}
**********************
Welcometo C++!
**********************
4.2 定义函数的一般形式
4.2.1 定义无参函数的一般形式
类型标识符 函数名([void])
{声明部分
语句
}
4.2.2
类型标识符 函数名(形式参数表列)
{声明部分
语句
}
4.3 函数参数和函数的值
4.3.1 形式参数和实际参数
在定义函数时指定的形参,在未出现函数调用时,它们并不占用内存中的存储单元,因此称它们为形式参数,在函数调用时,才为形参分配内存单元,以便实参的值传给形参;
例4.2 调用函数时的数据传递
#include iostream
using namespace std;
int max(int x,int y)
{
int z;
z=xy?x:y;
return (z);
}
int main()
{
int a,b,c;
coutplease enter two integer numbers:;
cinab;
c=max(a,b);
coutmax=cendl;
return 0;
}
please enter two integer numbers:2 3
max=3
4.3.2 函数的返回值
函数调用表达式的类型为在函数定义中为该函数指定的类型,如果其类型不为void的话,这个表达式值就是函数定义中的return语句所返回的值,否则类型为void,它表示一个无值表达式。如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。
函数的类型缺省时是int型:
#include iostream.h
fun(int k)
{
return k;
}
void main()
{
int f=88;
coutfun(f)endl;
}
88
4.4 函数调用
4.4.1 函数调用
函数名([实参表列])
实参表是用逗号隔开的一个表达式列表,在函数调用时,实参的值传给形参;在实参表中,实参的个数必须和形参的个数相同,实参的类型必须和对应的形参的类型一致(或赋值兼容),实参与形参顺序对应。
当在函数定义中没有指定形参时,调用表达式中的实参表为空,但函数调用运算符不能缺省。例如:
int value();
void main(){
coutvalue();
}
int value()
{
return 55*8;
}
4.4.2 函数调用的方式
函数语句
函数表达式 c=2*max(a,b);
函数参数 m=max(a,max(b,c));
4.4.3对被调函数的声明和函数原型
首先被调用的函数必须是已经存在的,但还需要
如果使用库函数,得用#include命令,将有关的头文件“包含”到本文件中来。
如果使用用户自己定义的函数,调用在前,定义在后,则必须对被调用函数作声明。
#include iostream.h
void main()
{
float add(float x,float y);
float a,b,c;
coutplease enter a,b:;
您可能关注的文档
最近下载
- 医师访谈记录.pdf VIP
- Unit 4 School Life 第3-4课时Reading and Rriting 课件 中职高一学年英语高教版基础模块1.ppt
- 最新中药饮片质量标准通则(试行).doc VIP
- 医学临床三基(输血学)-输血免疫学基础(精选试题).pptx VIP
- 我们的大脑的教学课件.ppt VIP
- 洞察世间智慧:哲学伴随我成长课件.ppt VIP
- 超星网课《汽车之旅》超星尔雅答案2023章节测验答案.doc VIP
- 老年人继承法培训课件.pptx VIP
- 科学湘科版二年级上册全册课件.pptx
- 第7课全球航路的开辟和欧洲早期殖民扩张【中职专用】《世界历史》(高教版2023基础模块).pptx VIP
文档评论(0)