公式错了:应是b[i*最大列数+j]
一句話解释:c语言二维数组变一维数组内元素地址是连续的,在内存中就是一维数组
所以反过来也是一样,公式a[i][j]=b[i*行+j]就是按照c语言二维数组變一维数组的行列值在一维数组中取值。
比如定义c语言二维数组变一维数组a[2][3]在内存中等同于定义一维数组b[2*3];
而取a[1][2]值对应一维数组下标5的え素,相当于取b[1*3+2](a[1][2]按连续地址数就是1行加3个元素)
你对这个回答的评价是
下载百喥知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案