Redian新闻
>
请教一个C的关于调用matrix的问题
avatar
请教一个C的关于调用matrix的问题# Programming - 葵花宝典
W*W
1
因为经常用到矩阵相乘,所以想写一个函数,矩阵的size是作为input的,可是C里面对
于多维数组必须制定列的长度,请教有什么general的方法编这样一个函数,我在gsl里
面也没找到。
avatar
b*a
2
传一个指针进去就可以了
比如 matrix N by N,
p指向数据的开始,
p[m*N+n]就指向m行n列。

【在 W*W 的大作中提到】
: 因为经常用到矩阵相乘,所以想写一个函数,矩阵的size是作为input的,可是C里面对
: 于多维数组必须制定列的长度,请教有什么general的方法编这样一个函数,我在gsl里
: 面也没找到。

avatar
I*s
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;
}
avatar
f*y
4
变为一维数组

【在 W*W 的大作中提到】
: 因为经常用到矩阵相乘,所以想写一个函数,矩阵的size是作为input的,可是C里面对
: 于多维数组必须制定列的长度,请教有什么general的方法编这样一个函数,我在gsl里
: 面也没找到。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。