gpt4 book ai didi

c - 从具有连续数据的矩阵访问数据

转载 作者:行者123 更新时间:2023-11-30 21:09:10 24 4
gpt4 key购买 nike

我编写了一个函数,它创建一个包含连续数据的矩阵,但我不明白如何访问这些矩阵。功能是:

int create_matrix(struct matrix *a, size_t m, size_t n)
{
a->m=m;
a->n=n;

a->data = malloc(a->n*sizeof(double*));
a->data[0] = malloc((a->n*mat_somma->m)*sizeof(double));

for (size_t r=1;r<mat_somma->N;++r)
{
a->data[r]=a->data[0] + a->m*r;
}

return 1;
}

编辑:这是矩阵中连续数据的示例,但使用双指数。如果在这里找到这个:http://www.geeksforgeeks.org/dynamically-allocate-2d-array-c/

我在 a->data[0]=malloc... 中遇到错误:无法从 void 转换为 double(在 Visual Studio 上)。

最佳答案

具有连续数据的矩阵将具有例如所有行都在一行中(主行)。所以

  1. a->data 的类型为 double*
  2. 您可以这样分配:a->data = malloc(m*n*sizeof(double));
  3. 您可以按以下方式访问 rowcol 处的元素:a->data[row*n + col]

假设m是行数,n是列数

关于c - 从具有连续数据的矩阵访问数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35483251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com