4.7 C++函数值与参数 | 函数实现比较大小

举报
C语言入门到精通 发表于 2021/02/26 05:07:13 2021/02/26
【摘要】 C++形式参数和实际参数主调函数和被调函数之间是有数据传递关系的,在调用函数时,函数是带参数的,参数分为形式参数和实际参数形式参数是在定义函数时,函数名后面括号中的变量名。实际参数则是在主调函数中调用一个函数时,函数名后面括号中的参数。形式参数和实际参数有什么区别呢?实参可以是变量、常量或表达式。在定义函数时,需要在函数首部指定形参的类型。实参与形参的类型应相同或赋值兼容。在调...

C++形式参数和实际参数

主调函数和被调函数之间是有数据传递关系的,在调用函数时,函数是带参数的,参数分为形式参数和实际参数

  • 形式参数是在定义函数时,函数名后面括号中的变量名。
  • 实际参数则是在主调函数中调用一个函数时,函数名后面括号中的参数。

形式参数和实际参数有什么区别呢?

  • 实参可以是变量、常量或表达式。
  • 在定义函数时,需要在函数首部指定形参的类型。
  • 实参与形参的类型应相同或赋值兼容。
  • 在调用函数时,编译系统会临时给形参分配存储单元。
  • 实参变量对形参变量的数据传递时值传递,也就是单向传递,只能由实参传给形参,无法逆序传输。
  • 在定义函数指定的形参,如果函数未调用,形参时不占内存中的存储单元,只有在函数调用发生时,形参才被分配存储单元,调用结束后,存储单元也会被释放。

C++函数的返回值

在C++中,函数的返回值是通过函数中的return语句获得,return语句将被调函数中的一个确定值带回主调函数中。

  • return语句后面的括号可以省略。
  • return语句后面的值也可以是表达式。

在定义函数时就指定函数值的类型,因为函数有返回值,这个值就应该属于某一个确定的类型。

如果函数值的类型和return语句中的表达式的值不一致,那么以函数类型为准,对数值型数据,可以自动进行类型转换。

经典案例:C++实现比较两个数大小,要求使用函数。

#include<iostream>//头文件 
using namespace std;//命名空间 
extern int CompareSize(int num_1,int num_2);//函数声明 
int main() //主函数 
{
  int num_1,num_2,max;//定义变量 
  cout<<"请输入两个数:";
  cin>>num_1>>num_2;
  max=CompareSize(num_1,num_2);//调用自己写的比较大小的函数 
  cout<<"较大的数是:"<<max<<endl;
  return 0;//主函数返回值为0 
} 
int CompareSize(int num_1,int num_2)//函数定义 
{
  int temp;//定义中间变量 
  if(num_1>num_2)//把两个数中的较大赋给temp 
  { temp=num_1;
  }
  else
  { temp=num_2;
  }
  return temp;//把较大的数返回到调用函数处 
}

执行本程序之后,会输出:

请输入两个数:5 8
大数时:8

--------------------------------
Process exited after 4.155 seconds with return value 0
请按任意键继续. . .
4.7 C++函数值与参数 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/326519932

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。