jypees
Messages postés34Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention19 août 2007
-
12 juin 2005 à 18:59
jypees
Messages postés34Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention19 août 2007
-
12 juin 2005 à 21:39
Bonjour a tous.
Voila j'ai l'habitude de faire de la prog sur unix et la je viens de me
lancer sur windows (lol) et j'ai un petit probleme car je ne sais pas
comment faire cela, voici le code :
#include <stdio.h>
#include <stdlib.h>
char **lol(char **tab)
{
char saisi[1024];
int i;
int j;
scanf("%s", &saisi);
j = atoi(saisi);
for (i = 5; i >= 0; i--)
{
if (tab[i][j] == 'a')
{
tab[i][j] = 'X';
return(tab);
}
}
}
int main(int argc, char *argv[])
{
int i;
int j;
char tab[6][7];
while (1)
{
for (i = 0; i < 6; i++)
{
for (j = 0; j < 7; j++)
tab[i][j] = 'a';
}
tab = lol(tab);
system("PAUSE");
}
return 0;
}
J'aimerais envoye mon tab a la fonction lol, le modifier et le
renvoyer. Et sa me met "passing arg 1 of `lol' from incompatible
pointer type" quelqu'un a une idée de la betise que j'ai faite? Merci
beaucoup pour votre soutiens ^^
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 12 juin 2005 à 19:47
A part system("pause"), ton programme n'a rien de spécifique a Windows, je vois pas quoi tu parles.
toddis> rien a voir avec un pointeur de fonction, renseigne toi un peu
tab=lol... ne peut pas marcher: tu ne peux pas affecter un tableau (ca pointe vers une zone mémoire, ca ne change pas).
Comme tu passes le tableau, celui ci sera de toutes facons modifiée,
lol peut donc être void. Enfin, pour le passage de paramètre, il suffit
de caster en (char**)
jypees
Messages postés34Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention19 août 2007 12 juin 2005 à 20:13
ce que je voulais dire c'est qu'a la base je ne faisait que des char **
(double malloc) donc je procedait comme cela. Donc la j'ai un peu
bloqué! Mais cela marche je vous remercie beaucoup !!!!