C/C++中的引用传递和值传递
在学习严蔚敏《数据结构(C语言版)》的过程中,在书本给出的函数原型上,见到了一从来没有见过的函数参数传递方式InitList(&L)
,并且会被c语言编译器报错,将源代码后缀名改为.cpp后即可正常编译,经查找资料和实验,总结出以下C/C++中函数参数的不同传递方法和性质。
值传递
理论上,可以将C语言中的参数传递方式都称为值传递。值传递,故名思意,传递的是参数的值,而不是参数本身。例如:
int main()
{
int a = 1, b = 2;
printf("before a = %d b = %d\n", a, b); //输出交换前a,b的值
swap(a, b);
printf("after a = %d b = %d\n&