定义int x[]={3,2,5,1,15,7,12};则表达式*(x+3)的值为多少 答案是1 为什么啊

定义int x[]={3,2,5,1,15,7,12};则表达式*(x+3)的值为多少 答案是1 为什么啊
给个详解~
水煮鱼不要辣椒 1年前 已收到1个回答 举报

lyl0708 幼苗

共回答了28个问题采纳率:92.9% 举报

首先x是这个数组的首地址,数组保存的int类型
所以可以把其看作是 const int* 类型,对int指针加1表示地址增加sizeof(int)
我们假设INT为4字节 X地址为0X0000(当然这不可能)
因此 x+1 表示 0X0004
所以*(x+3)取偏离数组首地址12字节数据,说白了就是x[3]

1年前

9
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.040 s. - webmaster@yulucn.com