W*W 发帖数: 293 | 1 因为经常用到矩阵相乘,所以想写一个函数,矩阵的size是作为input的,可是C里面对
于多维数组必须制定列的长度,请教有什么general的方法编这样一个函数,我在gsl里
面也没找到。 |
b******a 发帖数: 215 | 2 传一个指针进去就可以了
比如 matrix N by N,
p指向数据的开始,
p[m*N+n]就指向m行n列。
【在 W*W 的大作中提到】 : 因为经常用到矩阵相乘,所以想写一个函数,矩阵的size是作为input的,可是C里面对 : 于多维数组必须制定列的长度,请教有什么general的方法编这样一个函数,我在gsl里 : 面也没找到。
|
I**********s 发帖数: 441 | 3 use dynamic allocation.Example:
#define E_TYPE int
E_TYPE ** matrix(int h, int w) {
E_TYPE ** p;
int i, j;
p = (E_TYPE **) malloc(sizeof(E_TYPE *) * w);
for (i = 0; i < w; i ++) {
p[i] = (E_TYPE *) malloc(sizeof(E_TYPE) * h);
}
return p;
} |
f*******y 发帖数: 988 | 4 变为一维数组
【在 W*W 的大作中提到】 : 因为经常用到矩阵相乘,所以想写一个函数,矩阵的size是作为input的,可是C里面对 : 于多维数组必须制定列的长度,请教有什么general的方法编这样一个函数,我在gsl里 : 面也没找到。
|