salut,
tout d'abord, je voudrais remercier tous les membres de ce forum qui m'ont aidé ces derniers jours et m'aideront. Je serais bientôt un membre actif pour aider les autres aussi.
voilà mon code:
ce printf("voisins interieur:%d\n",voisins[debut+compt_gv].issue__width); m'a assuré que les modifs ont été appliquées, les voisins sont bien générés
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 void generation_voisins(int nb_param_DS, struct parametre_space *design_space, struct configuration *c, struct configuration *voisins, int debut) { int compt_gv; int position; //string nouvelle_valeur; for(compt_gv=0;compt_gv<nb_param_DS;compt_gv++) { position=position_dune_valeur_de_DS(design_space,*c,compt_gv); //voisin de droite //inutile,strcpy(nouvelle_valeur,design_space[compt_gv].valeur[(position+1)%(design_space[compt_gv].nb_valeurs)]); appliquer_nom_valeur_struct(design_space[compt_gv].nom_param,c,compt_gv,design_space,position); voisins[debut+2*compt_gv]=*c;//, sizeof (configuration)); //voisin de gauche appliquer_nom_valeur_struct(design_space[compt_gv].nom_param,c,compt_gv,design_space,position); voisins[debut+2*compt_gv]= *c;//, sizeof (c)); } printf("voisins interieur:%d\n",voisins[debut+compt_gv].issue__width); return voisins; }
voilà le code dans la fonction principale:
ce printf("voisins%d\n",voisins[4].fetch__ifqsize); me donne qui la portée de mon paramètre voisins a été local, la modif ne sais pas appliquée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 void recherche_locale(int nb_param_DS, struct parametre_space *design_space, int nb_param_constants, struct parametre_constant *ensemble_parametres_constants, struct configuration *c) { ... for(i=0;i<nbre_pareto;i++) { int debut=i*nb_param_DS; generation_voisins(nb_param_DS, design_space, &pareto[i], voisins, debut); } printf("voisins%d\n",voisins[4].fetch__ifqsize);
merci
Partager