先上代码
#include <iostream>
using namespace std;
void fun(int a, int b);
void main()
{
int a = 0 ,b = 0;
cout<<&a<<endl;
fun(a,b);
cout<< a <<" "<<b;
system("pause");
}
void fun(int a, int b)
{
a = 4;
b = 5;
cout<<&a<<endl;
}
0030FCF0
0030FC0C
0 0请按任意键继续. . .
发现a的地址在传入前后不同,说明形参与实参的地址不同
我们在函数形参上加入&
#include <iostream>
using namespace std;
void fun(int& a, int& b);
void main()
{
int a = 0 ,b = 0;
cout<<&a<<endl;
fun(a,b);
cout<< a <<" "<<b;
system("pause");
}
void fun(int& a, int& b)
{
a = 4;
b = 5;
cout<<&a<<endl;
}
003DF868
003DF868
4 5请按任意键继续. . .
发现两个a地址相同。