如何在C中声明具有两列和未知行数的矩阵

Posted

技术标签:

【中文标题】如何在C中声明具有两列和未知行数的矩阵【英文标题】:How to declare a matrix with two columns and unknown number of rows in C 【发布时间】:2021-08-17 15:53:52 【问题描述】:

我需要创建一个包含 2 列和未知行数的矩阵。我知道我必须使用 malloc 但我找不到如何声明这样的矩阵。它应该在第一列中保存整数,并在第二列中加倍。我该怎么做?

【问题讨论】:

要获得有用的答案,您首先需要告诉我们您尝试了什么以及您遇到的问题,因此我们可以确定您尝试自己解决这个问题。该网站不是家庭作业服务。 “第一列应该是整数,第二列应该是双倍”——那么它就不是一个“矩阵”。 【参考方案1】:
struct item 

  int i;
  double d;
;

struct item matrix = malloc(sizeof(struct item) * number_of_rows)

matrix[0].i = 544343;
matrix[0].d = 0.3434343;

这是您要查找的代码吗?

【讨论】:

请使用更有意义的名称! 类似的东西是的,但它不应该是类似的东西 //int num = something;双 *matrix=malloc(sizeof(double)*num);矩阵[][2]=0; C 数组(矩阵是二维数组)中的 @spaceNugget 只能包含同质数据。这就是为什么 Ed 向您展示了记录数组(结构)的实现,每个记录由一个整数和一个双精度数组成。 @Robert 解决了我所指的问题。评论已删除。 你可以说它是一个两列的矩阵。一个是 int,另一个是 double

以上是关于如何在C中声明具有两列和未知行数的矩阵的主要内容,如果未能解决你的问题,请参考以下文章

如何将字符串(来自具有 n 行数的文件)存储在动态数组中? C++

如何在 NativeScript 中创建具有动态行数和列数的表?

如何构建具有特定行数的表格视图?

javascript 定义二维数组,两列,未知行数

如何在 UITableview 中创建具有 n 行数的 UITextField

请问如何使用MATLAB进行元胞数组批量提取数据。