永发信息网

c语言中指针的定义问题。为什么*q加括号?

答案:4  悬赏:40  手机版
解决时间 2021-03-24 02:56
  • 提问者网友:喧嚣尘世
  • 2021-03-23 15:23
c语言中指针的定义问题。为什么*q加括号?
最佳答案
  • 五星知识达人网友:纵马山川剑自提
  • 2021-03-23 15:56
加不加括号,是数组指针,还是指针数组的区别
*p[2] 是一个指针数组,首先它是一个数组,数组中存的是指针,存指针的数组。
(*q)[2] 是数组指针,加括号先与 *结合,它是一个指针,指向一个第一维包含2个元素的2维数组,存数组地址的指针。

q=s ; 把 数组 s 的地址存入 q
p[0]=s[0] 把s[0] 第0行的首地址存入 数组p[0]中
全部回答
  • 1楼网友:北方的南先生
  • 2021-03-23 19:43
(*q)[2]表示一个二维数组
  • 2楼网友:鱼芗
  • 2021-03-23 19:02
这是一种强制类型转换,就是将两个元素强制转换为*q类型
  • 3楼网友:大漠
  • 2021-03-23 17:32
这里就牵涉到标示符的符号的优先级问题了。
一般来说括号优先级高于星号。
*p[2] 表示数组的指针
(*q)[2] 表示指针的数组
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯