c语言二维数组下标
发布时间: 2024-10-17 20:54:26
1. c语言二维数组下标负数是什么意思~
1 在C语言中,二维数组的下标可以为负数,表示指向前面的元素
2 对于二维数组 int arr[M][N]来说,arr[i][j]的地址是 (*arr)+i*N+j,其值是*((*arr)+i*N+j)
3 分析本题
数组a在初始化时后,其元素按照在内存中的排列顺序依次为1,2,3,0, 4,5,6,0, 0,0,0,0
数组a的第一个元素的地址为*a(或&a[0][0]或a[0]),记为p,
则,a[2][-2]的地址就是 p+2*4+(-2) 即p+6,即指向第7个元素,其值为6;
同理,a[1][3]的地址为p+1*4+3,即p+7,即指向第8个元素,其值为0
所以i的值为6
2. c语言二维数组下标的值怎么算
数组的下标是从0开始,由于数组是连续存储的,你可以想象用一个4x4的表格来表达这个数组,然后把for循环体内语句中数组对应的下标值根据算术表达式进行计算就可以啦。
2+6+9+2 =19,其他的数组下标都可用这种方法来计算。
热点内容