Commit e2bf24c0c823f18b8b19a66401014841f574eb9c
1 parent
ee3fc0eb
push
Showing
3 changed files
with
24 additions
and
18 deletions
Show diff stats
projetfinalaccent2.c
@@ -15,21 +15,6 @@ struct cell { | @@ -15,21 +15,6 @@ struct cell { | ||
15 | struct cell* arbreSuivant; | 15 | struct cell* arbreSuivant; |
16 | }; | 16 | }; |
17 | 17 | ||
18 | -void initialisation_tab_arbre(struct node tab[]) { | ||
19 | - int i = 0; | ||
20 | - for(wchar_t u = 'a'; u < A-3; u++) { | ||
21 | - tab[i].lettre = u; //ajout lettres minuscules | ||
22 | - tab[i].listeFils = NULL; | ||
23 | - i++; | ||
24 | - } | ||
25 | - tab[A-3].lettre = '?'; | ||
26 | - tab[A-2].lettre = '!'; | ||
27 | - tab[A-1].lettre = '\''; | ||
28 | - tab[A-3].listeFils = NULL; | ||
29 | - tab[A-2].listeFils = NULL; | ||
30 | - tab[A-1].listeFils = NULL; | ||
31 | -} | ||
32 | - | ||
33 | void ajout_tete(wchar_t elem, struct cell** pL) { | 18 | void ajout_tete(wchar_t elem, struct cell** pL) { |
34 | struct cell* p; | 19 | struct cell* p; |
35 | p = malloc(sizeof(struct cell)); | 20 | p = malloc(sizeof(struct cell)); |
@@ -53,6 +38,22 @@ struct cell ** insertion(wchar_t elem, struct cell** pL) { | @@ -53,6 +38,22 @@ struct cell ** insertion(wchar_t elem, struct cell** pL) { | ||
53 | } | 38 | } |
54 | } | 39 | } |
55 | 40 | ||
41 | +void initialisation_tab_arbre(struct node tab[]) { | ||
42 | + int i = 0; | ||
43 | + for(wchar_t u = 'a'; u < A-3; u++) { | ||
44 | + tab[i].lettre = u; //ajout lettres minuscules | ||
45 | + tab[i].listeFils = NULL; | ||
46 | + i++; | ||
47 | + } | ||
48 | + tab[A-3].lettre = '?'; | ||
49 | + tab[A-2].lettre = '!'; | ||
50 | + tab[A-1].lettre = '\''; | ||
51 | + for(int j = 1; j <= 3; j++) { //Ajout des caractères de ponctuation par défaut | ||
52 | + tab[A-j].listeFils = NULL; | ||
53 | + insertion('\0', &(tab[A-j].listeFils)); | ||
54 | + } | ||
55 | +} | ||
56 | + | ||
56 | int indice_lettre(struct node tab_arbre_prcp[], wchar_t lettre) | 57 | int indice_lettre(struct node tab_arbre_prcp[], wchar_t lettre) |
57 | { | 58 | { |
58 | int i = 1; | 59 | int i = 1; |
@@ -180,7 +181,7 @@ void correction_mot(struct node tab_arbre_prcp[]) { | @@ -180,7 +181,7 @@ void correction_mot(struct node tab_arbre_prcp[]) { | ||
180 | indice = indice_lettre(tab_arbre_prcp, motLu[0]); | 181 | indice = indice_lettre(tab_arbre_prcp, motLu[0]); |
181 | localisationArbre = &tab_arbre_prcp[indice].listeFils; | 182 | localisationArbre = &tab_arbre_prcp[indice].listeFils; |
182 | if(indice == 0) { | 183 | if(indice == 0) { |
183 | - wprintf(L"Erreur correction mot : L'un des caracteres n'est pas une lettre\n"); | 184 | + wprintf(L"Erreur correction mot : L'un des caracteres n'est pas une lettre\n"); |
184 | verif = 0; | 185 | verif = 0; |
185 | } | 186 | } |
186 | } | 187 | } |
@@ -203,7 +204,10 @@ void correction_mot(struct node tab_arbre_prcp[]) { | @@ -203,7 +204,10 @@ void correction_mot(struct node tab_arbre_prcp[]) { | ||
203 | 204 | ||
204 | void desalocationArbre(struct cell** pL) { | 205 | void desalocationArbre(struct cell** pL) { |
205 | 206 | ||
206 | - if ((*pL) == NULL) return; | 207 | + if ((*pL) == NULL) { |
208 | + printf("return arbre desaloc"); | ||
209 | + return; | ||
210 | + } | ||
207 | 211 | ||
208 | desalocationArbre(&(*pL)-> arbreSuivant); | 212 | desalocationArbre(&(*pL)-> arbreSuivant); |
209 | desalocationArbre(&(*pL)-> arbre -> listeFils); | 213 | desalocationArbre(&(*pL)-> arbre -> listeFils); |
@@ -215,6 +219,7 @@ void desalocationTableauArbre(struct node tab_arbre[]){ | @@ -215,6 +219,7 @@ void desalocationTableauArbre(struct node tab_arbre[]){ | ||
215 | int i = 0; | 219 | int i = 0; |
216 | for(wchar_t u = 'a'; u < A; u++) { | 220 | for(wchar_t u = 'a'; u < A; u++) { |
217 | desalocationArbre(&tab_arbre[i].listeFils); | 221 | desalocationArbre(&tab_arbre[i].listeFils); |
222 | + if(u>=A-4) printf("pas segfault : i = %d", i+1); | ||
218 | i++; | 223 | i++; |
219 | } | 224 | } |
220 | } | 225 | } |
@@ -246,7 +251,7 @@ int main(int argc, char* argv[]) { | @@ -246,7 +251,7 @@ int main(int argc, char* argv[]) { | ||
246 | correction_mot(tab_arbre); | 251 | correction_mot(tab_arbre); |
247 | desalocationTableauArbre(tab_arbre); | 252 | desalocationTableauArbre(tab_arbre); |
248 | 253 | ||
249 | - wprintf(L"fini\n"); | 254 | + printf("fini\n"); |
250 | 255 | ||
251 | 256 | ||
252 | return 0; | 257 | return 0; |
projetfinalaccent2.exe
No preview for this file type