Ich stürze mich immer in den Fall 4 meines Schalters in meiner Hauptfunktion und kann es nicht beheben.Drucken von Zeichenfolgen aus einem Array in einer Funktion in C
ich den Code ein bisschen erklärt, und hoffe, euch kann mir helfen:
Initialisierung der Funktion
void function1(char[]);
Deklarieren des Array von Strings
const char *my_array[] = {
"Array of strings one",
"Array of strings two",
"Array of strings three"};
Looping durch die Anordnung von Strings in der Hauptfunktion (Dies funktioniert korrekt, druckt das Array von Strings)
int i;
for (i=0; i < 3; i++) {
printf("%s\n", my_array[i]);
}
Der Code in der Schalterfunktion (noch in der Hauptfunktion)
case 4:
function1(my_array);
break;
Ich habe getestet und alle vorherigen Code korrekt funktioniert, ist das Problem hier ist (außerhalb der Hauptfunktion):
Wenn ich den Fall 4 des Schalters ausführen, stürzt es ab.
Die 2 die Log-Warnung gibt:
Warnung: Übergabe des Arguments 1 von 'function1' von inkompatiblen Zeigern Typ
Warnung: Format '% s' erwartet Argument vom Typ 'char *' , aber Argument 2 hat ‚int‘ [-Wformat =]
Sorry, wenn die Erklärung ist es ein wenig unklar, ich versuchte, so hart wie ich kann es sein, leicht zu verstehen geben.
Ich hoffe wirklich, dass Sie mir helfen können, danke !!
Sie sind nicht vorbei ein 'char []', du bist Übergabe eines 'char * []' oder 'char **' –