初始化器太多错误

Too many initialisers error

本文关键字:错误 太多 初始化      更新时间:2023-10-16

我试图运行下面的代码。我得到太多初始化错误。我知道在这里初始化数组有问题

#include<stdio.h>
#include<conio.h>
#include<time.h>
int array[16][5]={
    {0,0,0,0,0},
    {0,0,0,0,1},
    {0,0,0,1,0},  
    {0,0,0,1,1},
    {0,0,1,0,0},
    {0,0,1,0,1},
    {0,0,1,1,0},
    {0,0,1,1,1},
    {0,1,0,0,0},
    {0,1,0,0,1 },
    {0,1,0,1,0},
    {0,1,0,1,1},
    {0,1,1,0,0 },
    {0,1,1,0,1},
    {0,1,1,1,0 },
    {0,1,1,1,1}, 
    {1,0,0,0,0} 
};
int main()
{
    int i,j;
    for(i=0;i<16;i++)
    {
        for(j=0;j<5;j++)
        {
            printf("welcome");
        }
    }
    return(0);
}

你的数组有17个元素,不是16个

您已经声明了一个数组,其中16行,每行5 int。但是您写了17行,正如错误消息所说的那样——您定义的元素多于它应该接受的元素。

           ↓
int array[16][5]={
    {0,0,0,0,0},   //0
    {0,0,0,0,1},   //1
    {0,0,0,1,0},   //2
    {0,0,0,1,1},   //3
    {0,0,1,0,0},   //4
    {0,0,1,0,1},   //5
    {0,0,1,1,0},   //6
    {0,0,1,1,1},   //7
    {0,1,0,0,0},   //8
    {0,1,0,0,1 },  //9
    {0,1,0,1,0},   //10
    {0,1,0,1,1},   //11
    {0,1,1,0,0 },  //12
    {0,1,1,0,1},   //13
    {0,1,1,1,0 },  //14
    {0,1,1,1,1},   //15
    {1,0,0,0,0}    //16
    //Total of 17 elements
};