C在我的数组中得到错误的数字

时间:2014-02-16 04:00:18

标签: c arrays

所以出于某种原因,我的c程序搞砸了值

我有

int key1[10][3];
int out[4] = {1,0,0,1};
for(i =0;i<10;i++)
{
     for(j=0;j<3;j++)
     {
        key1[i][j] = out[j];
        printf("%d",key1[i][j]);
        //at this point it will print 100
     }
}
    printf("%d",key1[0][0]);
    printf("%d",key1[0][1]);
    printf("%d",key1[0][2]);
// output will be 000

这让我很疯狂,我没有在内存中正确地声明我的阵列

* 我向你道歉你们是对的我应该刚刚发布代码解决方案是一些与此无关的错误请原谅我*

1 个答案:

答案 0 :(得分:2)

您没有正确声明和初始化out数组。

更改

int out[1,0,0,1];

int out[4] = {1,0,0,1};

查看How to initialize all members of an array to the same value?


更新:对于您更新的问题,如果您不忘记首先声明i, j,它会打印正确的结果。

立即查看:http://ideone.com/Kf5tzC