Salut,
Apres lecture de ton code, il y a 2/3 choses qui me "choquent" un peu.
Dans le main :
static fPoint *tabCentre, **tabSouris;
AllocTab( &tabCentre, &tabSouris );
AllocTab demande un fpoint** et un fpoint*** . Ton appel n'est pas faut, mais c'est bizar comme type de declaration et d'appel : tu melanges pointeur et variables dans lesquelles tu aloues de la memoire. A priori, ca devrait etre bon, mais ce n''est pas super propre (=> plus dur a deboguer).
Toujours dans AllocTab :
int i, nbMotif, nbSouris;
for( i = 0; i < *pNbMotif; i++ )
C'est quoi ce pNbMotif ? alors que un nbMotif a été déclaré ?
Dans Reflexion tu as un tableau de pointeur en parametre. C'est juste, mais est qu'un simple de tableau ne suffit pas ? La encore tu auras moins de problemes de memoire à gérer (et comme c'est un tableau, tu recuperes bien les changements).
De plus a quoi correspond exactement la vairiable "taille" ? dans pTabCentre[0]->y = centre.y - taille;
Ensuite, pour pinailler, tu ne teste pas la valeur de retour de allocTab, qui par ailleur renvoie forcement 0 => un retour de type void est donc suffisant.
(ou alors teste tes malloc et renvoie -1 en cas d'echec).
De plus return est une macro, pas une fonction, donc les parentheses sont trompeuses :
return 0; est mieux que return( 0 ); (La c'est de l'integrisme, j'admet).
Bref, fait plutot un copier/coller de ton code source stp pour essayer de debuguer la chose. Car la il reste quelque zones sombres pour t'aider reellement.
Poste le Monday 3 May 2004 10:12:34