Question: We have this declaration in LCD.c:

```
unsigned char LCD[8][64] = {((unsigned char) 0)};

```

And in LCD.h we want to have something like:

```
extern unsigned char LCD[][];

```

We get this error:

```
Error[Pe098]: an array may not have elements of this type

```

Answer: 
In C an array does not contain information about the size of each one of its dimensions. Therefore, the compiler needs to know how large is each one of the dimensions except the first one. So, to correct this situation, do something like this:

LCD.h:

```
#define MINOR 64
extern unsigned char LCD[][MINOR];

```

LCD.c:

```
unsigned char LCD[8][MINOR] = {((unsigned char)0)};

```

(EDIT: sorry, I messed up things in the beginning, fixed it now.)
Add to the header file a declaration like:

```
extern unsigned char LCD[8][64];

```