Commit 0c5c5f5982169c85d495f75ba308a45d23282262

Authored by Thorsieger
1 parent c786e175

lancer le programme avec des paramètres

Showing 3 changed files with 26 additions and 12 deletions   Show diff stats
@@ -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 = &#39; &#39;; @@ -60,8 +70,9 @@ char recommencer = &#39; &#39;;
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
@@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
2 #include <stdlib.h> 2 #include <stdlib.h>
3 #include <wchar.h> 3 #include <wchar.h>
4 #include <locale.h> 4 #include <locale.h>
  5 +#include <string.h>
5 6
6 typedef struct node { 7 typedef struct node {
7 wchar_t val; 8 wchar_t val;