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
README.md
... ... @@ -30,4 +30,6 @@ Ce programme permet de détecter dans un texte tous les mots mal orthographiés.
30 30  
31 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 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 37 \ No newline at end of file
... ...
1 1 #include "tree.h"
2 2  
3   -int main()
  3 +int main(int argc, char* argv[])
4 4 {
5 5 setlocale(LC_ALL, "");
6   -
7 6 //Récupération du fichier contenant le dictionnaire
8 7 char fichier[100];
  8 + if(argc==3) strcpy(fichier,argv[1]);
  9 +
9 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 12 do{
12   - wscanf(L"%s",fichier);
  13 + if(argc != 3)wscanf(L"%s",fichier);
13 14 fp = fopen(fichier,"r");
14 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 23 }while(fp == NULL);
19 24  
... ... @@ -41,16 +46,21 @@ int main()
41 46 wprintf(L"Chargement du dictionnaire effectué!\n\n");
42 47  
43 48 //Récupération du fichier contenant les mots à tester
44   -char recommencer = ' ';
  49 + char recommencer = ' ';
45 50 do{
46 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 54 do{
49   - wscanf(L"%s",fichier);
  55 + if(argc != 3)wscanf(L"%s",fichier);
50 56 fp = fopen(fichier,"r");
51 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 65 }while(fp == NULL);
56 66  
... ... @@ -60,8 +70,9 @@ char recommencer = &#39; &#39;;
60 70 fclose(fp);
61 71  
62 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 76 }while(recommencer == 'Y' || recommencer == 'y');
66 77  
67 78 free_dico(Dico);//libérer la mémoire du dictionnaire
... ...
... ... @@ -2,6 +2,7 @@
2 2 #include <stdlib.h>
3 3 #include <wchar.h>
4 4 #include <locale.h>
  5 +#include <string.h>
5 6  
6 7 typedef struct node {
7 8 wchar_t val;
... ...