c语言 *p+2 与*(p+2) 相同吗
5个回答
展开全部
不一样!!!*p+2:p是一个指针。*p就指针所指的地址的值在加上2;
而*(p+2):p的地址加2,在取出地址(p+2)上的值:*(p+2) 。
而*(p+2):p的地址加2,在取出地址(p+2)上的值:*(p+2) 。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个肯定不同的
*p+2 表示取得p指向的值后再加上2
*(p+2) 表示p指向的位置移动2个存储单位 ,在取出新地址存放的值
*p+2 表示取得p指向的值后再加上2
*(p+2) 表示p指向的位置移动2个存储单位 ,在取出新地址存放的值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以这么理解:
*p+2表示指针指向的值加上2;
*(p+2)和数组p[2]等价,表示指针指向'2’位置时的值。
*p+2表示指针指向的值加上2;
*(p+2)和数组p[2]等价,表示指针指向'2’位置时的值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不同。*p + 2是根据*p的类型加上sizeof(p) *2;
而*(p+2)是p(地址)值加2.
而*(p+2)是p(地址)值加2.
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不同
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询