int *i,那么申请的i是用来储存地址的,
int &i那么申请的i是用来储存值的和int i,差不多,不过它可以用&i来记录地址
我个人觉得两个都可以看做指针
你看下面的程序就知道
#include<stdio.h>
void main()
{
int *a,c=0;
int &b=c;
a=&c;
printf("%d\n",c);
*a=1;
printf("%d\n",c);
b=2;
printf("%d\n",c);
}
分别输出的是
0
1
2 说明a,b都能改变c的值说白了其实他们指的是内存同一个地方值