Se connecter avec
S'enregistrer | Connectez-vous

probleme de matrice en C

Dernière réponse : dans Programmation

Bonsoir à tous,

je voudrais savoir comment on utilise la matrice à plus de deux dimensions car mmon compilateur me dit qu'il y a des erreurs par exemple :

#include<stdio.h>
#include<conio.h>

void essai(int *z);

void main(void)
{

int z[30][30][30];

essai(z); //le compilateur me dit que la syntaxe est fausse. Alors quel est le bon ?

printf("%d\n\n", z[1][2][3]);
}

void essai(int *z)
{
z[1][2][3]=3;
}

Autres pages sur : probleme matrice

Lassé par la pub ? Créez un compte

le source corrigé :

#include <stdio.h>

void essai(int z[30][30][30])
{
z[1][2][3] = 3;
}

int main(void)
{
int z[30][30][30];
essai(z);
printf("%d\n\n", z[1][2][3]);
}


testé et fonctionne avec mon compilateur (Gcc, fourni avec la mandrake)... donc tu devrais pas avoir de prob avec...

le problème venait du passage en paramètre de la matrice... le passage par pointeur c un peu délicat, parfois...

salut

il faut que tu te familiarise avec les pointeurs .. c'est obligé pr manipuler des tableaux a plusieurs dimensions ;-)

ex: tu peux déclarer ca
void essai(int z[][][])
ou ca
void essai(int ***z)

Lassé par la pub ? Créez un compte
Tom's guide dans le monde