C语言中,有一个二位数组inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};请问a[0],*(a+0)和*(*(a+0))的区别?
1个回答
2013-05-11
展开全部
要明白这事先要弄清二维数组的存储问题
先说一维数组,举例a[3],数组名称a就是指针,就是这个数组的起始地址。其中各元素的地址就是a, a+1,a+2. 它们的值分别是*a, *(a+1), *(a+2),也就是a[0],a[1],a[2].
二维数组int a[3][4],数组名称a则是指针的指针,它指向指针数组a[3],其中每一个元素又分别指向一个一维数组,每个数组包含了4个整数。
来自C语言基础训练…
先说一维数组,举例a[3],数组名称a就是指针,就是这个数组的起始地址。其中各元素的地址就是a, a+1,a+2. 它们的值分别是*a, *(a+1), *(a+2),也就是a[0],a[1],a[2].
二维数组int a[3][4],数组名称a则是指针的指针,它指向指针数组a[3],其中每一个元素又分别指向一个一维数组,每个数组包含了4个整数。
来自C语言基础训练…
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询