Commit bc42805a5730295e7f9351d1faa01ab9378b6e3c
ajout de la desalocation
Showing
3 changed files
with
31 additions
and
6 deletions
Show diff stats
dico.txt
projetfinalaccent.c
... | ... | @@ -7,12 +7,12 @@ |
7 | 7 | |
8 | 8 | struct node { |
9 | 9 | wchar_t lettre; |
10 | - struct cell* listeFils; | |
10 | + struct cell* listeFils; //Accés cellule contenant une des lettres suivante à "lettre" | |
11 | 11 | }; |
12 | 12 | |
13 | 13 | struct cell { |
14 | 14 | struct node* arbre; |
15 | - struct cell* arbreSuivant; | |
15 | + struct cell* arbreSuivant; //Accés à la cellule contenant une autre lettre suivante à "lettre" | |
16 | 16 | }; |
17 | 17 | |
18 | 18 | void lien_listeFils(struct cell** pL) { |
... | ... | @@ -86,9 +86,9 @@ void remplir_dico(FILE* fd, struct node tab_arbre_prcp[]) { |
86 | 86 | indice = indice_lettre(tab_arbre_prcp, motLu[0]); |
87 | 87 | localisationArbre = &tab_arbre_prcp[indice].listeFils; |
88 | 88 | if(indice == 0) { |
89 | - wprintf(L"Erreur remplissage dico : L'un des caracteres n'est pas une lettre\n"); | |
90 | - wprintf(L"Mot : %ls incorrect\n", motLu); | |
91 | - estUneLettre = 0; | |
89 | + wprintf(L"Erreur remplissage dico : L'un des caracteres n'est pas une lettre\n"); | |
90 | + wprintf(L"Mot : %ls incorrect\n", motLu); | |
91 | + estUneLettre = 0; | |
92 | 92 | } |
93 | 93 | } |
94 | 94 | else { |
... | ... | @@ -209,6 +209,20 @@ void desalocation(struct node** pL) { |
209 | 209 | free(*pL); |
210 | 210 | } |
211 | 211 | |
212 | +<<<<<<< HEAD | |
213 | +======= | |
214 | +void desalocation(struct node* arbre) { | |
215 | + if(arbre == NULL) return; | |
216 | + struct cell* listeFils2 = arbre->listeFils; | |
217 | + while(listeFils2 != NULL) { | |
218 | + listeFils2 = arbre->listeFils; | |
219 | + } | |
220 | + while(listeFils2->arbreSuivant != NULL) { | |
221 | + supp_tete(&listeFils2->arbreSuivant); | |
222 | + } | |
223 | +} | |
224 | + | |
225 | +>>>>>>> a8b3b5881e89dd7ae93a7b952fda31f1b524325b | |
212 | 226 | int main(int argc, char* argv[]) { |
213 | 227 | |
214 | 228 | int i =0; |
... | ... | @@ -234,6 +248,7 @@ int main(int argc, char* argv[]) { |
234 | 248 | remplir_dico(dico, tab_arbre); //on suppose qu'il n'y a pas d'accents dans le dictionnaire |
235 | 249 | correction_txt(txt, tab_arbre); |
236 | 250 | correction_mot(tab_arbre); |
251 | +<<<<<<< HEAD | |
237 | 252 | for(wchar_t u = 'a'; u < A; u++) { |
238 | 253 | a=&tab_arbre[i]; |
239 | 254 | desalocation(&a); |
... | ... | @@ -241,5 +256,14 @@ int main(int argc, char* argv[]) { |
241 | 256 | } |
242 | 257 | |
243 | 258 | |
259 | +======= | |
260 | + printf("tab_arbre[0].lettre : %c\n", tab_arbre[0].lettre); | |
261 | + printf("tab_arbre[0].listeFils : %p\n", tab_arbre[0].listeFils); | |
262 | + printf("tab_arbre[0].listeFils->arbre : %p\n", tab_arbre[0].listeFils->arbre); | |
263 | + printf("tab_arbre[0].listeFils->arbre->lettre : %c\n", tab_arbre[0].listeFils->arbre->lettre); | |
264 | + printf("tab_arbre[0].listeFils->arbre->listeFils->arbre->lettre : %c\n", tab_arbre[0].listeFils->arbre->listeFils->arbre->lettre); | |
265 | + printf("tab_arbre[0].listeFils->arbre->listeFils->arbre->listeFils->arbre->lettre : %c\n", tab_arbre[0].listeFils->arbre->listeFils->arbre->listeFils->arbre->lettre); | |
266 | + printf("tab_arbre[0].listeFils->arbreSuivant->arbre->lettre : %c\n", tab_arbre[0].listeFils->arbreSuivant->arbre->lettre); | |
267 | +>>>>>>> a8b3b5881e89dd7ae93a7b952fda31f1b524325b | |
244 | 268 | return 0; |
245 | 269 | } | ... | ... |
No preview for this file type