int a[10]={1,2,3,4,5,6,7,8};int *p;p=&a[5];p=[-3]的值是多少?以及为什么?谢谢啊

希望能说一下p[-3]是什么?谢谢!
2024-11-23 12:42:08
推荐回答(4个)
回答1:

#include
using namespace std;
int main()
{
int a[10]={1,2,3,4,5,6,7,8};//a[8],a[9]默认初始化为0

int *p;
p=&a[5];//指针p现在指向数组a中的第六个即a[6];

//p[-3]即表示指针p向前移动三个单位,也就是a[2],注意实际地址变量的值不变,p仍是只想a【5】
cout< cout< return 0;
}
加分吧,哥们,很辛苦的,嘿嘿

回答2:

p=[-3],这个不会出错?
如果是p[-3]就是3;因为为是把数字6的地址给p了,p[-3]就是在a[5]地址上减3,指到 a[2],a[2]的值是 3

回答3:

按照p[0]=a[5],p[-3]=a[2];也就是a[2]=3;

回答4:

p[0]是指当前指向的元素,p[-3]就是指前面第三个元素