Changes between Version 3 and Version 4 of CaoCourseTme1


Ignore:
Timestamp:
Feb 11, 2007, 12:26:06 AM (18 years ago)
Author:
alain
Comment:

--

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
    17= Objectifs =
    28
     
    5157}}}
    5258
    53 = Etape 2 : =
     59= Etape 2 : Analyse de la ligne de commande =
    5460
    5561Commencez par créer un second sous-répertoire tme1/etape2 dans votre répertoire tme1.
    5662Recopiez les fichiers main.c  et Makefile de dans ce sous-répertoire. La seconde étape consiste à
    57 écrire un fichier 'getarg.c', qui contient les deux fonctions getarg() et usage().
     63écrire un fichier 'getarg.c', qui contient la fonctions getarg().
    5864La fonction main() ne fait plus l'analyse de la ligne de commande, cette tâche étant réalisée par
    59 la fonction getarg().
     65la fonction getarg(). Le fichier 'getarg.c' doit contenir auss la déclaration de la variable globale
     66mainarg, de type 'mainarg_t', qui contient les valeurs de tous les paramètres lus par la fonction getarg().
    6067
    61 = Etape 3 : =
     68Le fichier 'getarg.h' doit contenir la définition du type mainarg_t, et la déclaration du prototype de la fonction getarg():
     69{{{
     70typedef struct mainarg_t {
     71char     *InputFileName;
     72char     *OutputFileName;
     73char     *CommandFileName
     74char     verbose;
     75} mainarg_t;
     76
     77extern mainarg_t  mainarg;
     78
     79extern void getarg(int argc, char argv[]);
     80}}}
     81
     82On souhaite que le prototype du programme 'pgmg' soit le suivant:
     83{{{
     84pgmg [-c command_file_name] [-v] input_file_name output_file_name
     85}}}
     86Les 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
     90On se contente dans cette étape d'analyser les arguments de la ligne de commande.
     91L'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 =
    6295
    6396= Etape 4 : =