2016 - 2024

感恩一路有你

c语言数组首地址是什么 数组首地址的问题?

浏览量:1891 时间:2021-03-11 05:52:08 作者:admin

数组首地址的问题?

如果a是一维数组名,我们知道*a是a[0],即*(arr 0)。因为a是数组的第一个地址,*a是第一个地址引用的元素,这是数组的第一个元素。同样,当a是二维数组名时,*a也取a的第一个元素,但此时a引用的元素是一维数组,所以实际上a引用的元素是一维数组的第一个地址。二维数组a,a是数组地址,指向行;有一个等价关系a[i]=*(a i)a[i]指向列,而&A[i]指向行。你可以把*和&看作是相反的:a指向一行,*(ai)指向一列,*(*(a I)j)根据a[3][4]的例子,相当于a[I][j]:三行四列数组a可以理解为由三个一维数组a[0][0]a[0][1]a[0][2]a[0][3]//第一行a[0][0]a[1][0]a[1][1]a[1][2]a[1][3]//第二行a[1][0]a[2]构成的二维数组[0]a[2][2]a[2][3]//第三行a[2][(数组包含四个元素),*a是a[0],a[0]是第一行地址,是第一个数组的第一个地址。*(ai)是a[I],它是第I行的第一个地址。如果将a定义为字符数组,将*a(即第一行的第一个地址)输出到0000,然后将*(a1)输出到0004而不是0001,则可以说a是指向一维数组的指针。

C语言中数组arr和 &arr对应的地址为什么一样?

这对我来说太难了!然而,我们发现指针可能不容易理解。例如,long a=1和int a=1的值是相同的。amparr的函数有点像long to int。ARR address是整个数组的地址&;ARR是第一个数字的地址。两者虽然价值相同,但意义不同。操作arr和&;arr的结果也不同。

希望对您有所帮助!

c语言数组首地址是什么 数组首地址的表示方式 数组首地址和首元素地址

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。