将数组索引映射到矩阵中

3
我的问题是这样的: 我有一个包含0到8的值的数组(a[9]=[0,1,2,....,8]),我想将数组的索引映射到一个3x3的矩阵中。 这对我来说很有用,因为我要开发“广播乘法滚动”算法来计算两个矩阵的乘积。 谢谢大家。

如果值是固定的,为什么不直接编写矩阵数组呢? - m0skit0
在寻求帮助之前,您至少应该自己尝试一下。您面临了什么问题?您得到了哪些错误? - hrv
我很高兴你觉得我的回答有用。现在请自问如何计算n维数组的索引。这不是复杂的概念,而是一个通用的概念,任何C程序员都应该理解。 - Carey Gregory
1个回答

2
如果index是一个指向9个元素的单维数组的索引,那么可以使用以下方式将该数组视为一个二维3x3数组:
int row = index / 3;
int column = index % 3;
int foo = array[row][column];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接