*(w+1)[2]与*((w+1)[2])的区别

懵逼是一种状态 2019-03-29 10:30:17
网上查阅了很久,但是始终没有比较详细的解释,都是计算步骤,其实对于*((w+1)[2])我还是很清楚的,相当于数组w[1][2],但是*(w+1)[2]我查阅得到说是*的优先级低于()和[],所以等价于w[3][0],我实在无法理解*(w+1)[2]到*(w+1+2)的转变,[2]为什么可以变成+2 ?从二维数组指针定义来说w+1为行元素下移一行,后面的[2]为什么也是也是下移行元素?
...全文
986 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 9 楼 lin5161678的回复:
引用
对于*((w+1)[2])我还是很清楚的,相当于数组w[1][2]

清楚是清楚了 可惜是错的
这是 w[3][0]
前面打错了,后面跟着复制了,手机上打代码比较麻烦,那个[ ]不能解引用嘛?不是指针里面[ ]同等于*解引用嘛?
lin5161678 2019-03-31
  • 打赏
  • 举报
回复
引用
对于*((w+1)[2])我还是很清楚的,相当于数组w[1][2]

清楚是清楚了 可惜是错的
这是 w[3][0]
coo135 2019-03-31
  • 打赏
  • 举报
回复
引用 7 楼 懵逼是一种状态 的回复:
[quote=引用 6 楼 qq_38834405的回复:]你二维数组要么用[]要么用*来解引用,*(w+1)[2],w+1先与[2]结合,因为优先级的问题,他还没有解引用,所以是一直在对行操作,就变成了*(w+3),再与*结合,变成**(w+3)。 你可以写一下(w+1)[2][1],等同于w[3][1]。
[ ]的优先级仅次于(),为什么w+1会与[2]结合啊?不是应该先[ ]解引用嘛?请问这块知识能到哪里去看呀?我看谭浩强书上没有讲有关解引用的点。而且网上也没有找到有关二位数组的解引用问题[/quote] [ ] ( ) -> . 是同一优先级,顺序是从左→向右。 * & 之类的一元运算符,优先级第二,顺序是从右←向左 所以*(w+1)[2] 先算(w+1) 再算[2],将(w+1)[2]展开就是:*((w+1)+2)==*(w+3),这就是数组第四行的首地址。 然后再*运算,解引用,*(*(w+3)),得到数组第四行第一个元素的值(w[3][0])。
  • 打赏
  • 举报
回复
引用 6 楼 qq_38834405的回复:
你二维数组要么用[]要么用*来解引用,*(w+1)[2],w+1先与[2]结合,因为优先级的问题,他还没有解引用,所以是一直在对行操作,就变成了*(w+3),再与*结合,变成**(w+3)。 你可以写一下(w+1)[2][1],等同于w[3][1]。
[ ]的优先级仅次于(),为什么w+1会与[2]结合啊?不是应该先[ ]解引用嘛?请问这块知识能到哪里去看呀?我看谭浩强书上没有讲有关解引用的点。而且网上也没有找到有关二位数组的解引用问题
  • 打赏
  • 举报
回复
引用 1 楼 qq_38834405的回复:
优先级和括号的用法有什么关系。。
各位,抱歉,我打错了,是*(w+1)[2]与(*(w+1))[2]的区别
  • 打赏
  • 举报
回复
引用 1 楼 qq_38834405的回复:
优先级和括号的用法有什么关系。。
抱歉抱歉,我才看到我打错了,是*(w+1)[2]与(*(w+1))[2]的区别,原谅我...
刘蕘 2019-03-30
  • 打赏
  • 举报
回复
优先级和括号的用法有什么关系。。
刘蕘 2019-03-30
  • 打赏
  • 举报
回复
你二维数组要么用[]要么用*来解引用,*(w+1)[2],w+1先与[2]结合,因为优先级的问题,他还没有解引用,所以是一直在对行操作,就变成了*(w+3),再与*结合,变成**(w+3)。 你可以写一下(w+1)[2][1],等同于w[3][1]。
  • 打赏
  • 举报
回复
引用 4 楼 qq_38834405的回复:
本质就是a[0] = *(a+0)
额,所以说我打错了,还是谢谢你,我还有疑问是那个*(w+1)[2]为什么可以写成*(*((w+1)+2))。或者说,(w+1)[2]可以写成*((w+1)+2)啊?
刘蕘 2019-03-30
  • 打赏
  • 举报
回复
本质就是a[0] = *(a+0)

70,014

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧