Mit dem folgenden Code:
/* signatures */
int getParams(char params[MAX_PARAM_LEN][MAX_LINE_LEN]);
int getVersion(const char params[MAX_PARAM_LEN][MAX_LINE_LEN],
const char* tagName );
/* initializing */
char params[MAX_PARAM_LEN][MAX_LINE_LEN] = {};
/* getting parameters */
paramCount = getParams(params); /* OK, params match with getParams signature */
/* processing the params array */
i = getVersion(params, "version"); /* warning: passing arg 1 of `getVersion' from incompatible pointer type */
Ich sehe, dass die Konstante das Problem ist, aber ich weiß nicht, warum oder wie man es vermeiden kann. Was ich will, ist eine Funktion, die nicht die params
mehr. Jeder Ratschlag ist willkommen (abgesehen von der Deaktivierung dieser Warnung oder dem Löschen von const in der Verarbeitungsfunktion).
Danke: Visko