That's because there are too many initializers :P
You are specifying the array as 5x4, yet you have initializers 20x2
Either use
static DWORD 2DArray[20][2] =
or change the initializer like so:
static DWORD 2DArray[5][4] =
{
{ 0 , 1 , 2 , 3 }
{ 1 , 1 , 2 , 3 }
{ 2 , 1 , 2 , 3 }
{ 3 , 1 , 2 , 3 }
{ 4 , 1 , 2 , 3 }
}
EDIT: Perhaps you meant:
static DWORD 3DArray[4][5][2] =
{ { { 0 , 1 }, { 1 , 4 },
{ 2 , 5 },
{ 3 , 6 },
{ 4 , 25 }
},
{
{ 0 , 2 }, { 1 , 9 }, { 2 , 10}, { 3 , 11}, { 4 , 26 }
},
{
{ 0 , 3 }, { 1 , 13}, { 2 , 14}, { 3 , 15}, { 4 , 23 }
},
{
{ 0 , 4 }, { 1 , 17}, { 2 , 18}, { 3 , 19}, { 4 , 22 }
}
}
You don't need the first digit if these are the real numbers as they relate to the index anyway.
I would suggest:
static DWORD 3DArray[4][5] =
{ { 1, 4, 5, 6, 25 },
{ 2 , 9 , 10 , 11 , 26 },
{ 3 , 13 , 14 , 15 , 23 },
{ 4 , 17 , 18 , 19 , 22 }
}