问一下 定义一个二维数组a[2][3] 比如我想取a[1][2]的首地址 我知道用*(a+1)+2表示 我就是不明白 a本来就是地址了 a+1就是a[1][0]的首地址 为什么前面还要加个*之后再偏移 为什么(a+1)+2这样不对 谢谢了
那么这个*(a+i)就是相当于一个指针 而不是a+1这个地址里面的内容 是这样吗
追答不是这个地址中的内容,还是存放的地址,a+i表示的是一行地址的首地址,*(a+I)取内容是不是成了明确元素的位置啊,再取*才是内容
那么这个*(a+i)就是相当于一个指针 而不是a+1这个地址里面的内容 是这样吗
追答a是二维数组名,是二维指针,*(a + i)则为一维指针,等同于a[i],简单的说,a[i]指向了二维数组a[M][N]的第i行。
本回答被提问者采纳