读书人

C++指针操作有关问题

发布时间: 2012-04-23 13:17:38 作者: rapoo

C++指针操作问题
int main(){
int a[5]={0,1,2,3,4},*n,*p1=a,*p2=&a[5];

n=p2-p1;
n=p1+p2;

return 0;
}

这是我写的程序上面那个代码运行报错。我想问下在C++中两个指针不能进行相加和相减操作么?
如果能进行那么我上面那段代码要怎么改才能运行。还有如果能进行相加或者相减操作我的指针n里面存的是其中一个数组的地址吗?

[解决办法]

探讨

引用:

引用:
引用:

能减。不能加

能不能详细的解答下?为什么能减不能加 还有能否解答下我上面所以问题

指针相加没有意义。 所以不能加。
指针相减表示两个数据之间的距离。

int main(){
int a[5]={0,1,2,3,4},*p1=a,*p2=&a[5];
int n;
……

读书人网 >C++

热点推荐