Initialisieren char**

Ich bin sehr neu in C++. Ich versuche, eine Funktion aufzurufen, nimmt in " char**":

bool func(char** a) {
    //blablabla
}

So dauert es in ein array von c-strings. Ich brauche zum erstellen eines char**, aber nichts funktioniert.

char** a = char[255][255]; //error: type name is not allowed

char** a = new char[255][255]; //error: a value of type "char (*)[255]" cannot be used to initialize an entity of type "char **"

char a[][] = {"banana", "apple"};
char** b = &a; //error: a value of type "<error-type> (*)[2]" cannot be used to initialize an entity of type "char **"

Ich am Ende tun müssen:

char* a[] = {"banana", "apple"};

Warum die ersten nicht funktioniert hat und warum die letzten gearbeitet?

Vielen Dank im Voraus.

  • Das erste paar hat nicht funktioniert aus genau den Gründen, die der compiler gab Sie in die Fehler. Nicht sicher, welche Art von anderen Antwort erwarten Sie hier. Code wie char **a = char[255][255] ist einfach kein gültiges C++, so dass es nicht kompilieren.
InformationsquelleAutor Boyang | 2013-09-18
Schreibe einen Kommentar