int *arr[4] ;
for(int i = 0 ; i < 4 ; i++){
arr[i] = &i;
}
for(i = 0 ; i < 4 ; i++){
cout << "arr[" << i << "]=" << arr[i]
<< "*arr[" << i << "]=" << *arr[i] << endl;
}
这个是C++编写的指针,
arr[i] = &i;
这个赋值语句,数组arr的4个空间存储的是变量i的内存地址,都是相同的地址。
为什么最后从arr[i]指向的地址取出来的真实值却是0,1,2,3。 不应该都是4吗?