如何在头文件中声明extern 2d-array?

use*_*072 9 c header extern multidimensional-array

我们在LCD.c中有这个声明:

unsigned char LCD[8][64] = {((unsigned char) 0)};
Run Code Online (Sandbox Code Playgroud)

在LCD.h中我们希望有类似的东西:

extern unsigned char LCD[][];
Run Code Online (Sandbox Code Playgroud)

我们收到此错误:

Error[Pe098]: an array may not have elements of this type
Run Code Online (Sandbox Code Playgroud)

Mar*_*ins 17

您至少需要包含2-D阵列的最右列大小.您可以这样声明:

extern unsigned char LCD[][64];
Run Code Online (Sandbox Code Playgroud)

否则,编译器将无法计算第一行之后的偏移量.