tenemos esta declaración en LCD.c:Cómo declarar extern 2d-array en el encabezado?
unsigned char LCD[8][64] = {((unsigned char) 0)};
Y en LCD.h queremos tener algo como:
extern unsigned char LCD[][];
Nos sale este error:
Error[Pe098]: an array may not have elements of this type
Puede ser útil enfatizar '#include" LCD.h "' en 'LCD.c' (de modo que la macro' MINOR' se define solo una vez en el archivo de encabezado) para excluir la posibilidad de tipos conflictivos para 'LCD' entre declaración y definición real (que no se detecta como error de compilación cuando están en diferentes archivos y también error de enlazador). –
Pensé que cada vez que un proyecto contiene tanto un XYZ.hy un XYZ.c, es casi una regla universal y una apuesta segura que XYZ.c incluirá XYZ.h, ¿no? –
Sí, tiene razón, pero como siempre es mejor confirmarlo (por ejemplo, para algunos programadores novatos que están leyendo SO). –