erhalte ich die Fehlermeldung „intitializer fails to determine size of 'K'
“ in ZeileFehler: initializer versagt Größe von ‚K‘ bestimmen
int K[]= new int[Vertices->total];
Wie kann ich es lösen?
erhalte ich die Fehlermeldung „intitializer fails to determine size of 'K'
“ in ZeileFehler: initializer versagt Größe von ‚K‘ bestimmen
int K[]= new int[Vertices->total];
Wie kann ich es lösen?
ändern
int K[]= new int[Vertices->total];
zu
int *K = new int[Vertices->total];
1. Die eine ist die Java
Weise eine Anordnung zu schaffen, in dem Sie K
eine Referenz auf einen Integer-Array ist. Aber in C++
müssen wir K
einen Zeiger auf Integer-Typ machen.
Thankx funktioniert, aber kann ich das gleiche K verwenden, um Arrays zu speichern – smile
@shiva Fast. Arrays in c sind wirklich nur Zeiger auf Speicherblöcke. Wenn Sie also K verwenden möchten, um ein Array mit einem Array von Integer zu manipulieren, lautet die Deklaration: int K ** = new int * [
new int[Vertices->total]
gibt einen Zeiger zurück und daher sollte int *K = new int[Vertices->total];
gut funktionieren.
Wenn Sie die Größe von Vertices->total
bei der Kompilierung (dh CONSTANT) kennen, dann können Sie verwendet haben int K[Vertices->total];
// Ordnet den Speicher auf dem Stapel
Sie müssen entscheiden, ob Sie in 'C sind die Programmierung ++' oder ' C, und, wenn es das letztere ist, ob Sie 'C99' verwenden oder nicht. –
Lousy Fehlermeldung. Welchen Compiler benutzen Sie? –
@nobugz Eigentlich denke ich, das ist eine sinnvolle Fehlermeldung. –