Changes between Version 3 and Version 4 of CaoCourseTme1
- Timestamp:
- Feb 11, 2007, 12:26:06 AM (18 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
CaoCourseTme1
v3 v4 1 {{{ 2 #!html 3 <h1> TME1 : Outils de développement de programes C </h1> 4 }}} 5 [[PageOutline]] 6 1 7 = Objectifs = 2 8 … … 51 57 }}} 52 58 53 = Etape 2 : =59 = Etape 2 : Analyse de la ligne de commande = 54 60 55 61 Commencez par créer un second sous-répertoire tme1/etape2 dans votre répertoire tme1. 56 62 Recopiez les fichiers main.c et Makefile de dans ce sous-répertoire. La seconde étape consiste à 57 écrire un fichier 'getarg.c', qui contient l es deux fonctions getarg() et usage().63 écrire un fichier 'getarg.c', qui contient la fonctions getarg(). 58 64 La fonction main() ne fait plus l'analyse de la ligne de commande, cette tâche étant réalisée par 59 la fonction getarg(). 65 la fonction getarg(). Le fichier 'getarg.c' doit contenir auss la déclaration de la variable globale 66 mainarg, de type 'mainarg_t', qui contient les valeurs de tous les paramètres lus par la fonction getarg(). 60 67 61 = Etape 3 : = 68 Le fichier 'getarg.h' doit contenir la définition du type mainarg_t, et la déclaration du prototype de la fonction getarg(): 69 {{{ 70 typedef struct mainarg_t { 71 char *InputFileName; 72 char *OutputFileName; 73 char *CommandFileName 74 char verbose; 75 } mainarg_t; 76 77 extern mainarg_t mainarg; 78 79 extern void getarg(int argc, char argv[]); 80 }}} 81 82 On souhaite que le prototype du programme 'pgmg' soit le suivant: 83 {{{ 84 pgmg [-c command_file_name] [-v] input_file_name output_file_name 85 }}} 86 Les deux arguments optionnels doivent pouvoir être placés n'importe où sur la ligne de commande. 87 * -v est un drapeau qui demande au programme d'afficher un message à chaque étape du traitement. 88 * -c command_file_name permet de définir une série de traitement à appliquer à l'image, dans un fichier de commandes. 89 90 On se contente dans cette étape d'analyser les arguments de la ligne de commande. 91 L'analyse du des commandes contenues dans le fichier de commande sera réalisée 92 à l'étape suivante. 93 94 = Etape 3 : Analyse du fichier de commandes = 62 95 63 96 = Etape 4 : =