Bonjour,

J'utilise une fonction, issue d'une biblitothèque, qui prend comme argument un pointeur sur un tableau C.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
void laFonction(char* arg[])
{
}
La valeur avec laquelle je veux appeler la fonction est un tableau de chaînes de caractères.

Dès, lors deux manières de l'initialiser :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
const char* mesValeurs[] = {"a","b","c"};
char* mesValeurs[] = {"a","b","c"};
Si j'utilise la première, ça râle au niveau de la fonction.
Si j'utilise la seconde, gcc m'envoie des avertissements du type :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
Il faudrait donc que je déclare en const, et que fasse un const_cast dans l'appel de la fonction.
Mais je n'arrive pas à trouver la syntaxe dans le cas d'un tableau...

PS : je sais que la fonction ne modifie pas le tableau ; mais je ne peux pas modifier sa signature (biblitothèque externe)