Deklaration von Parametern
-
Ich habe die folgenden Definitionen
typedef struct md { short m; short d; } smd; const smd DES[] = {{ 1, -2}, { 4, -3}, { 8, -4}, {12, -2}}; const short sDES = sizeof(DES) / sizeof(smd);
Jetzt möchte ich diesen Array einer Methode übergeben,
aber ich bekomme die Deklaration nicht hin:Weder
double addDelta(int len, smd deltas[]) {
noch
double addDelta(int len, smd *deltas) {
werden vom Compiler akzeptiert.
Was mache ich falsch?
-
geht das auch genauer?
-
Compilerfehler:
Passing arg 2 of addDelta discards qualifier from pointer target type
-
Wie sieht denn der Aufruf von addDelta aus, bei dem die Fehlermeldung kommt?
-
Du kannst kein const typ an an eine Funktion übergeben die typ (ohne const) ertwartet. Denn dadurch würde die Information "const" verloren gehen.
-
Stimmt! Das war's
Da sieht man mal, wie schnell man C verlernt