Commit 0c5c5f5982169c85d495f75ba308a45d23282262
1 parent
c786e175
lancer le programme avec des paramètres
Showing
3 changed files
with
26 additions
and
12 deletions
Show diff stats
README.md
@@ -30,4 +30,6 @@ Ce programme permet de détecter dans un texte tous les mots mal orthographiés. | @@ -30,4 +30,6 @@ Ce programme permet de détecter dans un texte tous les mots mal orthographiés. | ||
30 | 30 | ||
31 | * Vous pouvez maintenant soit quitter le programme soit relancer une analyse d'un autre fichier. | 31 | * Vous pouvez maintenant soit quitter le programme soit relancer une analyse d'un autre fichier. |
32 | 32 | ||
33 | -*Pour changer de dictionnaire il vous faudra relancer le programme.* | ||
34 | \ No newline at end of file | 33 | \ No newline at end of file |
34 | +*Pour changer de dictionnaire il vous faudra relancer le programme.* | ||
35 | + | ||
36 | +Il est également possible de lancer le programme avec les fichiers en paramètres. Lancer la commande suivante : ./compteur_erreurs <chemin dictionnaire> <chemin ficher à analyser> | ||
35 | \ No newline at end of file | 37 | \ No newline at end of file |
1 | #include "tree.h" | 1 | #include "tree.h" |
2 | 2 | ||
3 | -int main() | 3 | +int main(int argc, char* argv[]) |
4 | { | 4 | { |
5 | setlocale(LC_ALL, ""); | 5 | setlocale(LC_ALL, ""); |
6 | - | ||
7 | //Récupération du fichier contenant le dictionnaire | 6 | //Récupération du fichier contenant le dictionnaire |
8 | char fichier[100]; | 7 | char fichier[100]; |
8 | + if(argc==3) strcpy(fichier,argv[1]); | ||
9 | + | ||
9 | FILE* fp = NULL; | 10 | FILE* fp = NULL; |
10 | - wprintf(L"Quel fichier voulez-vous utiliser comme dictionnaire ?\n"); | 11 | + if(argc != 3)wprintf(L"Quel fichier voulez-vous utiliser comme dictionnaire ?\n"); |
11 | do{ | 12 | do{ |
12 | - wscanf(L"%s",fichier); | 13 | + if(argc != 3)wscanf(L"%s",fichier); |
13 | fp = fopen(fichier,"r"); | 14 | fp = fopen(fichier,"r"); |
14 | if(fp == NULL) | 15 | if(fp == NULL) |
15 | { | 16 | { |
16 | - wprintf(L"Le fichier n'est pas accessible !\nEntrez un autre nom de fichier :\n"); | 17 | + if(argc==3){ |
18 | + wprintf(L"Le fichier n'est pas accessible !\n"); | ||
19 | + return 1; | ||
20 | + } | ||
21 | + else wprintf(L"Le fichier n'est pas accessible !\nEntrez un autre nom de fichier :\n"); | ||
17 | } | 22 | } |
18 | }while(fp == NULL); | 23 | }while(fp == NULL); |
19 | 24 | ||
@@ -41,16 +46,21 @@ int main() | @@ -41,16 +46,21 @@ int main() | ||
41 | wprintf(L"Chargement du dictionnaire effectué!\n\n"); | 46 | wprintf(L"Chargement du dictionnaire effectué!\n\n"); |
42 | 47 | ||
43 | //Récupération du fichier contenant les mots à tester | 48 | //Récupération du fichier contenant les mots à tester |
44 | -char recommencer = ' '; | 49 | + char recommencer = ' '; |
45 | do{ | 50 | do{ |
46 | FILE* fp = NULL; | 51 | FILE* fp = NULL; |
47 | - wprintf(L"Quel fichier voulez-vous tester ?\n"); | 52 | + if(argc != 3)wprintf(L"Quel fichier voulez-vous tester ?\n"); |
53 | + else strcpy(fichier,argv[2]); | ||
48 | do{ | 54 | do{ |
49 | - wscanf(L"%s",fichier); | 55 | + if(argc != 3)wscanf(L"%s",fichier); |
50 | fp = fopen(fichier,"r"); | 56 | fp = fopen(fichier,"r"); |
51 | if(fp == NULL) | 57 | if(fp == NULL) |
52 | { | 58 | { |
53 | - wprintf(L"Le fichier n'est pas accessible !\nEntrez un autre nom de fichier :\n"); | 59 | + if(argc==3){ |
60 | + wprintf(L"Le fichier n'est pas accessible !\n"); | ||
61 | + return 1; | ||
62 | + } | ||
63 | + else wprintf(L"Le fichier n'est pas accessible !\nEntrez un autre nom de fichier :\n"); | ||
54 | } | 64 | } |
55 | }while(fp == NULL); | 65 | }while(fp == NULL); |
56 | 66 | ||
@@ -60,8 +70,9 @@ char recommencer = ' '; | @@ -60,8 +70,9 @@ char recommencer = ' '; | ||
60 | fclose(fp); | 70 | fclose(fp); |
61 | 71 | ||
62 | //Demande si volonté de recommencer | 72 | //Demande si volonté de recommencer |
63 | - wprintf(L"Voulez vous tester un autre fichier ?[Y]\n"); | ||
64 | - wscanf(L" %c",&recommencer); | 73 | + if(argc != 3)wprintf(L"Voulez vous tester un autre fichier ?[Y]\n"); |
74 | + if(argc != 3)wscanf(L" %c",&recommencer); | ||
75 | + else recommencer = ' '; | ||
65 | }while(recommencer == 'Y' || recommencer == 'y'); | 76 | }while(recommencer == 'Y' || recommencer == 'y'); |
66 | 77 | ||
67 | free_dico(Dico);//libérer la mémoire du dictionnaire | 78 | free_dico(Dico);//libérer la mémoire du dictionnaire |