#include <stdio.h>
#include "windows.h"
#include "iostream.h"
void Func1(int x) //值传递 x是新创建的一个int类型数据 他初始的值为0(n拷贝给他的)
{
x=x+10; //改变X的值 n是不会改变的
}
void Func2(int *x) //指针传递 x是一个整形指针 指向n的地址&n
{
(*x)=(*x)+10; //*x 相当于指向&n 就是这个地址所存储的数据值
// x=x+10; //x+10 是地址&n+10了 地址改变 但是值不改变
}
void Func3(int &x) //引用传递 x是引用了n, x和n是一个东西 x不过是n的别名而已
{
x=x+10; //x=x+10 相当于n=n+10
}
void main(void)
{
int n=0;
Func1(n); //值传递
cout<<"n="<<n<<endl;
Func2(&n); //指针传递
cout<<"n="<<n<<endl;
Func3(n); //引用传递
cout<<"n="<<n<<endl;
}