Wie Sie richtig schreiben, Erklärungen von extern-arrays (und double-arrays) in C header-Dateien?

Angenommen, ich möchte ein globales array von Daten in meinem Programm, zum Beispiel:

int lookup_indexes[] = { -1, 1, 1, -1, 2, 1, 1, -2, 2, 2, -1, 1, 1, 2 };

Was ist die richtige extern Erklärung für dieses array in der C-header-Datei?

Auch was über ein array wie dieses:

int double_indexes[][5] = { { -1, 1, 1, -1, 1 }, { 2, -2, 2, 1, -1 } };

In meiner header-Datei habe ich versucht, dieses:

extern int lookup_indexes[];
extern int double_indexes[][5];

Aber dies führt zu compiler-Fehler:

water.h:5: error: array type has incomplete element type

Ich kann ' T es herausfinden.

Dank, Boda Cydo.

  • Können Sie nach dem Inhalt water.h mindestens bis zur Linie 5 und zeigen, welche Zeile den Fehler verursacht.
  • Charles, es ist #ifndef, #define, ein Zeilenumbruch und die extern int lookup_indexes[]; (4. Zeile) und extern int double_indexes[][5]; (5. Zeile).
  • er meinte, um es in Ihrer Frage. Fügen Sie einfach es.
  • stackoverflow.com/questions/3071890/...
InformationsquelleAutor bodacydo | 2010-08-06
Schreibe einen Kommentar