Steh hier gerade vor einem Problem bei der Ausgabe eines 2D Arrays in C. Zwar übergebe ich einer Funktion mein 2D Array (mittels Zeiger realisiert) und die Größe des Arrays;
C++:
void displayMatrix(double **A, int dim) { int i, j; for (i = 0; i < dim; i++) { printf("["); for (j = 0; j < dim; j++) { printf(" %f",A[i][j]); } printf(" ]\n"); /*Compiler liefert Fehler: "will never be excuted" */ } }
Das Problem ist die Dimension die ich der Funktion mitgebe. Lasse ich den Parameter dim weg und schreibe bei den beiden Schleifen statt dim eine konkrete Zahl liefert der Compiler keine Fehler. Wieso scheitert dies wenn ich dim als Parameter verwende? Ich hoffe es kann mir jemand weiterhelfen. DANKE
Bei mir liefert das keinen derartigen Fehler, nicht mal eine Warnung, nicht mal mit -Wall -Wextra -pedantic -ansi. Tipfeeler? -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra
Hm. Das -pipe könnte auf exotischen Systemen ein Problem darstellen, oder wenn du dem Compiler einen anderen Assembler unterschiebst. -O2 darf an der Funktionsweise des Programms eigentlich nichts ändern. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra