Bonjour bonjour, alors voilà mon soucis, j'ai fait un programme qui marche mais qui est disons un peu en bordel.
Vu que ça risque de devenir compliqué pour m'y retrouver j'ai décidé de faire une "optimisation" et de transformer une partie en fonctions histoire que ça soit ranger et de plus pas user trop de mémoire avec des variables qui pourraient me servir qu'une fois
le soucis c'est que bah a un des passages en fonction ça marche plus ^^' , en fait le build ne marque aucune erreur, et j'arrive pas à trouver l'erreur ( c'est assez compliqué pour moi vu que je fait rentrer dans la fonction en question une adresse de tableau de structure (oui oui un peu galère))
voici les différents codes
voilà, je vous ai mis juste la partie importante, typeIA est un type structureCode:typeIA liste_IA[Nbre_noms]; anti_collision(Nbre_noms,map_x,map_y,liste_IA); void anti_collision(int taille_pseudo_tableau,int dimension_x,int dimension_y,typeIA structure[]) { int i=0,g,a,sortie=1; int tab_x[dimension_x]; int tab_y[dimension_y]; for (g=0 ; g<(taille_pseudo_tableau-1) ; g++) { tab_x[g] = structure[i].x; tab_y[g] = structure[i].y; do { for(a=0 ; a<=i; a=a+1) { if (tab_x[g] == structure[a].x && g!=a) { if(tab_y[g]== structure[a].y) { structure[i].y=(structure[i].y)+1; tab_y[g]=structure[i].y; structure[i].x=structure[i].x+1; tab_x[g]=structure[i].x; sortie=0; } else { sortie=1; } // permet de se débarasser des collisions } else { sortie=1; } } } while(sortie!=1); i=i+1; } }
quand j'ai utiliser le mode debugger je tombe sur une erreur de segmentation
si vous pouviez me dire ( pas pourquoi ça cloche, parce que c'est pratiquement sûr à 99% que c'est la façon dont j'écris listeIA en paramètre et comment la variable structure doit être écrite) comment écrire donc le paramètre d'entrer ainsi que la forme qu'il doit prendre à l'intérieur de la fonction pour que ça marche, ce serait sympa de votre part =)
merci d'avance
-----