Probleme pointeur

Résolu
jehutyy Messages postés 51 Date d'inscription   Statut Membre Dernière intervention   -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai un petit probleme dans une programme, ou plutot je ne comprend pas mon erreur.
J'ai écris un programme qui déclare un tableau et 2 dimensions remplit de 0 et de 1, et une fonction qui permet de mettre à 1 l'élement à l'indice désigné.
Mais bien sur ça ne marche pas, je vous met le code dite moi ce que vous en pensez.


#include <stdio.h>
#include <stdlib.h>

void DessineTerrain(int *terrain, int tailleX, int tailleY);
void valeur(int *tableau, int indice);


int main()
{
int tab[2][3]={0};
//fin initialisation du tableaux
DessineTerrain(&tab, 2, 3);
printf("\n");
valeur(&tab, 0)
DessineTerrain(&tab, 2, 3);
return 0;
}

void DessineTerrain(int *terrain, int tailleX, int tailleY){
int i;
for(i=0; i<tailleX*tailleY ;i++)
{
printf("%d, ", terrain[i]);
}
}

void valeur(int *tableau, int indice){ //permet de changer la valeur à l'indice donné
if(tableau[indice]==0) tableau[indice]==1;
if(tableau[indice]==1) tableau[indice]==0;
}

2 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Houolà !
mélanger pointeur et tableau c'est pas bien.
En 1D ça passe grace à une équivalence, mais en 2D non.
surtout en passant &tab au lieu de tab.
0
jehutyy Messages postés 51 Date d'inscription   Statut Membre Dernière intervention  
 
Ah d'accord bon ba deja ça je savais pas, donc vaut mieux passer un tableau 2d en paramatre plutot qu'un pointeur?
Si oui, comment faut t'il faire?

cordialement
jehutyy
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
void DessineTerrain(int terrain[2][3], int tailleX, int tailleY);
0