个人原创:
1. 形参:形式上的参数,一般多在函数声明、函数定义的参数上;
2. 实参:实体参数,有实际的值,在运算上被循环使用的值;
3. 按值传参:按值,就是把实际的值传给函数内部;
4. 指针传参:使用指针形式传递参数,把参数的地址传递进去,直接操作地址;
5. 引用传参:只有在C++中才有,C中没有引用传参,其意义就是传递了一个实参的别名,有实参和指针的优点,但没有其占用那么多的内存;
函数之间的数据传递共有三种形式:
(1) 按值传递:使用变量名做实参和形参,直观易懂,但效率低;
(2) 指针传递:使用指针变量做实参和形参,将需要传递的数据的首地址传递进去,在时间和空间上都开销比较小,但不是很容易懂;
(3) 引用传递:C++才有,算是给C做了一个小优化,结合了(1)和(2)的优点,实参是变量数据,形参是变量的引用,传递的是地址;
有时候我们会碰到函数返回类型返回的一个值不能满足返回值数量的需求,可以用指针传参和引用传参来解决,两者不但可以作为输入,也可作为输出,其在实现函数内部修改的值在函数外部同样有效;