Citation:
mujigka a écrit :
Ne peux -tu pas faire une allocation dynamique d'un tableau bidimensionnel de chaînes de caractères (avec malloc) à l'intérieur de ta fonction et retourner son adresse?
Code :
char ***tab_retour;
Pourquoi 3 étoiles pour un tableau de pointeur ?
Tout le monde est tombé sur la tête ce soir ou quoi ?
Désolé d'avoir embrouillé tout le monde! Si l'auteur cherchais à faire un tableau bidimensionnel de char, le type correct pour malloc n'est pas char ***tableau_retour, et je ne l'ai jamais prétendu.
L'auteur du post a déclaré dans le corps sa fonction un VLA de la manière suivante:
char *tableau_retour [nb_ligne][nb_colonne];
Ce qui représente un tableau bidementionnel de pointeurs sur char, ce qui n'est évidemment pas correct ici. Cela m'apprendra corriger un bout de code sans définir précisément au préalable le but recherché par l'auteur. Le type de retour de la fonction aurait dû me mettre la puce à l'oreille.
CONCLUSION: pour créer un tableau bi-dimentionnel de char par allocation dynamique, le code que j'est proposé n'est PAS CORRECT. Il permet d'allouer dynamiquement l'espace pour un tableau bidimensionnel de pointeurs sur char. Mille excuses
Thierry
Partager