C++之所以增加引用机制,主要是把它作为函数参数,以扩充函数传递数据的功能。
解题思路:
传递变量的地址。形参是指针变量,实参是一个变量的地址,调用函数时,形参(指针变量)得到实参变量的地址,因此指向实参变量单元。
编写程序:
运行结果:
程序分析:
调用函数时把变量i和j的地址传送给形参p1和p2(它们是int*型指针变量),因此*p1和i为同一内存单元,*p2和j为同一内存单元。显然,i和j的值改变了。
这种虚实结合的方法仍然是"值传递"方式,只是实参的值是变量的地址而已。通过形参指针变量访问主函数中的变量(i和j),并改变它们的值。这样就能得到正确结果,但是在概念上却兜了一个圈子,不那么直截了当。