c语言指针数组问题1

img

*pa=a[0]指的是等于首地址1吗 pa[i*3]是什么意思

你这是二维数组,a[0]就是二维数组的第一行,a[0]的值是第一行元素首地址(你可以参考:一维数组名是数组首元素地址),当然也是整个数组的首元素地址。

int *pa=a[0];

就是让pa指向第一行首元素地址。

由于数组元素在内存中是连续排列的,所以,pa[5](数组指针也可以使用中括号下标)就是整个二维数组的第6个元素,即a[1][2]。

求和的是第二行元素:4+5+1=10

首地址下标是0不是1
pa[i*3]就是计算i*3,比如说第一个i=0,那么就是pa[0],第二个i=1,那么就是pa[3]

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 以下回答来自chatgpt:

    无具体的问题需要回答。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^