文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>形参与实参的参数传递,如何改变参数值

形参与实参的参数传递,如何改变参数值

时间:2010-10-26  来源:theman_lai

#include <iostream>
using namespace std;
void change(int *a,int &b,int c) //这里的形参是*a,&b,c呢,还是a,b,c?
{
    c = *a;
    b = 3;
    *a = 2;
}
int main()
{
    int a = 1,b = 2, c = 5;
    change(&a,b,c);//这里的实参是&a,b,c呢,还是a,b,c?
    cout<<a<<b<<c<<endl;
    return 0;
}
 


运行结果是 2 3 5  

实参是a的地址,b的引用,和c的值 ,形参问得就有问题。

形参是用来表明函数本身需要实参的类型,这里的a,b,c跟主函数里的变量a,b,c没有任何关系。为防止混淆,这里把形参 a,b,c换成 aa,bb,cc
void change(int *aa,int &bb,int cc) 
int *aa:需要一个int型指针(地址) 即 参数aa是一个地址
int &bb: 需要int型变量名的引用 参数bb是一个变量名的引用
int cc: 需要一个int型的值 参数cc是一个int型值

实参是传给函数的实际值
change(&a,b,c); //实参:a的地址,b的引用(*),和c的值
(*)调用时函数会通过形参(int &bb)来判断

这样一来 aa = 变量a的地址
  bb = 变量b的别名
  cc = 变量c的值
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载