值传递:一般发生在函数形参的类型为char、short、int、long、float、double这样的类型,它的传 递,一般是实参将自己的值复制一份给形参,也就是实参变量和形参变量的变量空间是分开的。此 时形参无法改变实参的数据。
void test(int b)
{
}
int main()
{
int a = 3;
test(a);
}
//此时,在test函数里操作b的值,a不会发生变化
引用传递:一般发生在函数形参的类型为数组、指针这样的类型,它的传递,一般是实参将自己的 内存首地址复制一份给形参,也就是实参变量和形参变量对应内存空间是同一个。此时形参可以改 变实参的数据。
void test(int b[])
{
}
int main()
{
int a[] = {3,65,8,2};
test(a);
}
//此时,在test函数里操作b[],a[]的值也会发生变化