求解释:1、int a[5]={1,2,3,4,5};int*p=&a[3];则值为3的是p-a

2、typedef enum week{mon,tue,wed,thu,fri,sat}week_day;则语句正确的是week_day d; 另外:1、a+2、 *p 、p-a[0] 错哪里? 2、week d;、 typedef enum week d; 、enum week d; 为什么错了? 非常に感谢して~~

enum week d; 重定义了,正确的为week d;
week_day为week的别名,所以week_day d是正确的,与week d相同。
a+2表示的是地址a右偏移两位,即为a[2];
*p表示的是a[3]值,前面加*为取该地址值,单纯的p代表址;
p-a[0],p代表的是地址,a[0]代表的是值1,表达式即是p-1,即地址p往左偏移1,变成另一个地址了;
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-08
1,p - a 是等于3
2,正确.

a + 2可以啊,表示的是a[2]的地址.
*p也没有问题啊,是a[3]
p-a[0]也可以,但是不建议这么用.因为正好a[0] = 1,所以表示的是a[2]本回答被提问者和网友采纳
相似回答