【问题标题】:In c how to assign 2d array based of a 1d array?在c中如何分配基于一维数组的二维数组?
【发布时间】:2014-02-15 18:34:10
【问题描述】:

所以假设我有一个像

这样的数组
int x1[5] = {0,0,0,3,2};
int x2[5] = {0,0,0,3,2};
int x3[5] = {0,0,0,3,2};
int x4[5] = {0,0,0,3,2};

int listofx[4][5];

当我使用 assign 时,我几乎希望 listofx 将每个 x 数组存储在其位置之一,但我收到一个错误,提示存在不兼容的类型

【问题讨论】:

  • int x[][] = {{0, 0, 0, 3, 2}, {0, 0, 0, 3, 2}, ...} 呢?
  • 我只是以 0,0,0,3,2 为例,程序在做一些事情后会有不同的 x 值,并且 woulsint 有预先声明的值,所以我想在之后分配它们跨度>

标签: c arrays 2d


【解决方案1】:

你可以这样做:

int *px[] = { x1, x2, x3, x4 };

如果您想访问您的号码,请执行以下操作:

px[1][4]; //1 is x2, 0 is x1

【讨论】:

  • 你最好的
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-29
  • 2017-01-13
  • 1970-01-01
相关资源
最近更新 更多