Fonction et tableau multidimensionnel
Résolu
elcactus75
Messages postés
41
Statut
Membre
-
elcactus75 Messages postés 41 Statut Membre -
elcactus75 Messages postés 41 Statut Membre -
Bonsoir, je programme en C++ et je me demandais juste si c'était normal qu'une fonction qui prend en paramètre un tableau multidimensionnel me demande la taille de celui-ci ??
Par exemple si je crée une fonction comme celle-ci :
void fonction(int tableau[][]);
J'ai une erreur de compilation... :\
Si quelqu'un aurais une idée je lui en serait très reconnaissant :) Merci d'avance.
Par exemple si je crée une fonction comme celle-ci :
void fonction(int tableau[][]);
J'ai une erreur de compilation... :\
Si quelqu'un aurais une idée je lui en serait très reconnaissant :) Merci d'avance.
3 réponses
-
As-tu alloué de la mémoire pour y stocker tes données ?
issu de l'exemple précedent :/* Allocation dynamique */ t = new int* [ nLignes ]; for (int i=0; i < nLignes; i++) t[i] = new int[ nColonnes ];
-
-
Il faudrait, pour bien faire, effectuer dans la fonction un test de son initialisation...
//code de principe, non testé void lafonction(int** paramTableau){ //remplissage du tableau paramTableau[0][0] = 45; } void main(){ int** tableau; //Définition du tableau tableau = new int* [15] //contenant 15 tableaux de pointeur for (int i=0 ; i<15; i++) //pour chacun de ces sous-tableaux tableau[i]=new int [23]; //on initialise un tableau de 23 int // on a donc une grille de 15*23 int lafonction(tableau); //qu'on passe à la fonction }Encore un peu de doc sur les pointeurs et les tableaux : https://cpp.developpez.com/cours/cpp/?page=page_6 -
-
-
Salut,
il faut le déclarer en int**
Un exemple par ici : https://fr.wikibooks.org/wiki/Programmation_C%2B%2B/Les_tableaux#Dynamiques
Les tableaux dynamiques, même en une dimension, doivent de toute façon être déclarés en pointeur, les crochets ne sont utilisable (dans la déclaration) que pour les tableaux statiques = taille fixe.
Bonne continuation. -
Nous, on a passé le chapitre sur les tableaux en cours de programmation , et je n'ai jamais entendu parler de tableau multidimensionnel...
Alors soit ça n'existe pas, soit c'est moi qui me trompe.
Pourriez-vous nous donner le code entier et l'erreur ? ça nous aiderait à comprendre...
-
Bonsoir Le Dodo,
Vous pouvez trouvez un cours sur les tableau multidimensionnel juste la : https://openclassrooms.com/fr/courses/1894236-programmez-avec-le-langage-c -
-