C语言中取地址跟C++中的引用是一个意思吗?
不是一个意思,C语言中取地址是把变量的地址取出来,让一个指针指向这个地址
C++中的引用是为变量起一个别名,这两个名字都是代表这个变量,这个别名是一个引用而不是指针
指针可以随时改变指向的变量 ,而引用只能在初始化的时候赋值,赋值后不能改变
如:
指针:
int i = 10;
int *p = &i;
要想改变i的值就写*p = 5;
还以改变p指向的变量如p = p + 1;
引用:
int i = 10;
int &p = i;
要想改变i的值就写p = 5;
这里写p = p + 1;就把i加1了