Im Beispiel unten Ich versteht nicht, warum ich diese Fehlermeldung erhalten:Unvollständige Typ Element in lang foo [2] []
test.c:3:6: error: array type has incomplete element type
Hier wird der Compiler einen vollständigen Typen dh[2][3]
in Betracht ziehen sollte, weil Jedes Unterelement hat eine Größe von 3. Also, wo ist das Problem?
long foo[2][] = {
{2,3,4},
{5,6,7}
};
Wenn ich die Art vervollständigen foo[2][3]
mit werde ich diese Fehlermeldung erhalten:
test.c:9:5: note: expected ‘long int *’ but argument is of type ‘long int (*)[3]’
int bar(long* list, size_t size)
Mit diesem Beispiel:
int bar(long* list, size_t size);
int main() {
bar(&foo[0], sizeof(foo[0]));
return 0;
}
Wie kann ich es beheben?
Mögliche Duplikate von [Übergabe eines 2D-Arrays von Strukturen] (http://StackOverflow.com/Questions/35614862/Passing-A-2D-Array-of-Structs) – Olaf
'bar (foo [0] , sizeof foo [0]/sizeof foo [0] [0]) ' –