在动态分配的矩阵中读取错误

西尔弗7

我想将数组的内容放入矩阵中。如果矩阵是静态的,则一切正常,但是当我尝试动态分配时,则无法读取。

int main() 
{ 
int a[]={2, 1, 2, 4, 9, 2, 1, 7, 3, 5, 8, 3};

int c[3][4];

int **b;
b = (int**) malloc (3*sizeof(int*));
for (int i=0; i < 3; i++)
    b[i] = (int*) calloc (4, sizeof(int)); //o linie

int k=0, m=0;
for (int i=0; i<12; i++)
    {
        b[k][m]=a[i];
        c[k][m]=a[i];
        m++;
        if((i!=0) && (!(i % 4))) {k++; m=1;}
    }

for (int i=0; i<3; i++){
    cout << endl;
    for (int j=0; j<4; j++)
        cout << b[i][j] << " ";
}

cout << endl;

for (int i=0; i<3; i++){
    cout << endl;
    for (int j=0; j<4; j++)
        cout << c[i][j] << " ";
}
 return 0;
}


  The output:
  2 1 2 4
  0 1 2 7 //I have 0, why don't I have 9?
  0 5 8 3 //I have 0, why don't I have 3?

  2 1 2 4
  9 1 2 7 //here is correct
  3 5 8 3 //here is correct

请告诉我我错了。

安德鲁

您应该将if更改为

if (i % 4 == 3)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在动态分配的矩阵中读取不正确

来自分类Dev

C中未知矩阵的动态分配

来自分类Dev

C ++中的动态分配错误

来自分类Dev

使用经典矩阵而不是动态分配时的分段错误

来自分类Dev

动态分配的2D矩阵的分割错误

来自分类Dev

如何在C ++中访问动态分配的矩阵?

来自分类Dev

在C中动态分配3D矩阵

来自分类Dev

在动态分配的矩阵中输入值 - C

来自分类Dev

在内存中动态分配矩阵时出现的问题

来自分类Dev

从文件中读取数字到动态分配的数组中

来自分类Dev

动态分配矩阵使程序无响应

来自分类Dev

包含动态分配数组的结构中的段错误

来自分类Dev

shell C 中的动态分配和分段错误

来自分类Dev

结构中的动态分配

来自分类Dev

从txt文件读取并动态分配

来自分类Dev

从txt文件读取并动态分配

来自分类Dev

Android Studio错误与动态分配片段

来自分类Dev

如何在C ++中将逗号分隔的数字矩阵放入动态分配的数组中?

来自分类Dev

c中的字符矩阵(动态分配的二维数组)

来自分类Dev

C编程:从文件读取数据,动态分配内存,将内容放置在struct数组中

来自分类Dev

OpenGL:将动态分配的矩阵传递给统一的

来自分类Dev

确保动态分配的矩阵是正方形的方法?

来自分类Dev

在Python中,动态分配字典条目

来自分类Dev

在pascal中动态分配匿名函数

来自分类Dev

C ++中的动态分配数组

来自分类Dev

释放C中动态分配的内存

来自分类Dev

在类中动态分配向量

来自分类Dev

在C中动态分配线程

来自分类Dev

C ++中的动态分配数组