改变,交换变量值的几种函数写法
1.值传递 :
结果为1 ,传递的是a变量的值,值传递不改变实参的内容。2.传地址: 结果为10, 传递的是a变量的地址,改变的是a地址中的值,实参改变。
3.交换地址(错误) 主函数输出的为a,b的地址。f中把a,b的地址进行了交换,但不改变主函数中a,b的地址。这里把地址当作是一个int常量理解,就变成了值传递,不改变实参的值。
4.引用(c++) 给a变量起了b的别名,改变b实际是对a的改变,仅c++;注意只有变量才能用引用。
5.利用引用交换变量的地址 p,q就是指针,分别指向a,b的那片存储空间。利用引用把p,q指针交换值,即p指向了b,q指向了a。于是p,q指针指向的内存地址内的值发生了交换。