C++语言 函数的定义与调用

函数定义由两部分组成:函数首部和函数操作描述。函数首部是函数的接口,包括函数名,函数的参数和返回值类型。函数操作描述由函数体的语句序列实现。
函数是程序代码的一个自包含单元,用于完成某一特定的任务。
有的函数完成某一操作;
有的函数计算出一个值。
通常,一个函数即能完成某一特定操作,又能计算数值。
为什么要定义函数
避免重复的编程。
使程序更加模块化,便于阅读、修改。
一个程序必须有且只有一个main( )函数,C++从main( )函数开始执行。
C++语言中,所有函数都是平行独立的,无主次、相互包含之分。函数可以嵌套调用,不可嵌套定义。

例:
void printstar() //定义printstar函数
{
cout<<"****************************** “<<endl;
}
void print_message() //定义print_message函数
{
cout<<” Welcome to C++!"<<endl;
}
void main()
{
printstar( ); //调用printstar 函数
print_message( ); //调用print_message函数
printstar( ); //调用printstar 函数
}

定义函数的一般形式

定义无参函数的一般形式 定义无参函数的一般形式
类型标识符 函数名()
{声明部分
语句

void printstar() //定义printstar函数
{
cout<<"************ "<<endl;
}

在这里插入图片描述
类型标识符 函数名(形式参数表列)
{声明部分
语句

int max(int x,int y)
{int z;
z=x>y?x:y;
return (z);

C++要求在定义函数时必须指定函数的类型。
在定义函数时 形式参数和实际参数 函数名后面括号中的变量名称为形式参数(formal parameter,简称形参)。
形参是被调函数中的变量;在主调函数中调用一个函数时,函数名后面括
号中的参数(可以是一个表达式)称为实际参数(actual parameter,简称实参)。
实参是主调函数赋给被调函数的特定值。
实参可以是常量、变量或复杂的表达式,不管是哪种情况,在调用时实参必须是一个确定的值。

在这里插入图片描述
说明:

1 在函数调用前,形参并不占内存的存储单元,只有在函数开始调用时,形参才被分配内存单元。调用结束后,形参所占用的内存单元被释放。
2 实参可以是常量、变量或表达式,但要求有确定的值。
3 实参变量对形参变量的数据传递是"值传递",即单向传递,只由实参传给形参,而不能由形参传回来给实参。在内存中实参、形参分占不同的单元。

实参与形参一一对应,类型应相同或赋值兼容。

4 不同的函数中可以使用相同的变量名和形参名,他们是不同的变量。

在这里插入图片描述

函数的返回值

函数的返回值通过return语句获得。函数只能有唯一的返回值。
函数返回值的类型就是函数的类型。
return语句可以是一个表达式,函数先计算表达式后再返回值。
return语句还可以终止函数,并将控制返回到主调函数。
return 语句之后的代码是不能执行的代码。
一个函数中可以有一个以上的return语句,执行到哪一个return语句,哪一个语句起作用。

例:
#include
using namespace std;
int max(int x,int y)
{int z;
z=x>y?x:y;
return(z);
}
int main( )
{int a,b,c; cin>>a>>b;
c=max(a,b); cout<<“max=”<<c<<endl;
return 0;}

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值