1.参数与返回值都为普通情况
#include <iostream>
#include <typeinfo>
using namespace std;
int get(int x){
cout<<"形参地址为"<<&x<<endl;
int r = x 1;
cout<<"返回值地址为"<<&r<<endl;
return r;
}
int main()
{
int a = 10;
cout<<"输入参数地址为"<<&a<<endl;
int b = get(a);
cout<<"结果地址为"<<&b<<endl;
cin.get();
return 0;
}
输出:
输入参数地址为0x7ffcfbd21970
形参地址为0x7ffcfbd2194c
返回值地址为0x7ffcfbd21954
结果地址为0x7ffcfbd21974
普通情况下,实参与形参、返回值与结果都是不同的地址,说明了函数传参是按值传递的,返回值也是从自动局部变量复制为结果的
2.参数为引用
输出:
输入参数地址为0x7fff16c62f60
形参地址为0x7fff16c62f60
返回值地址为0x7fff16c62f44
结果地址为0x