Changes between Version 21 and Version 22 of CaoCourseTme1


Ignore:
Timestamp:
Feb 11, 2007, 1:57:56 PM (18 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CaoCourseTme1

    v21 v22  
    8383
    8484Commencez par créer un second sous-répertoire tme1/etape2 dans votre répertoire tme1.
    85 Recopiez les fichiers main.c  et Makefile de dans ce sous-répertoire. La seconde étape consiste à
    86 écrire un fichier 'getarg.c', qui contient la fonctions getarg().
    87 Il faut modifier la fonction main(), qui ne doit plus faire l'analyse de la ligne de commande,
    88 cette tâche étant réalisée par la fonction getarg().  Le fichier 'getarg.c' doit contenir aussi
    89 la déclaration de la variable globale mainarg, de type 'mainarg_t', qui contient les valeurs de tous les paramètres lus par la fonction getarg().
     85Recopiez les fichiers main.c  et Makefile de dans ce sous-répertoire. Dans cette seconde étape,
     86ce n'est plus le programme main() qui analyse la ligne de commande, car on souhaite introduire
     87des arguments optionnels dans la ligne de commande. La tâche d'analyse est effectuée par une
     88fonction getarg() contenue dans le fichier "getarg.c". Il faut donc modifier la fonction main(),
     89et écrire la fonction getarg(). 
    9090
    91 Le fichier 'getarg.h' doit contenir la définition du type mainarg_t, et la déclaration du prototype de la fonction getarg():
     91Le fichier "getarg.c" doit contenir aussi la déclaration de la variable globale mainarg,
     92de type 'mainarg_t', qui contient les valeurs de tous les paramètres lus par la fonction getarg().
     93
     94Le fichier "getarg.h" doit contenir la définition du type mainarg_t, et la déclaration du prototype
     95de la fonction getarg() :
    9296{{{
    9397typedef struct mainarg_t {
     
    102106extern void getarg(int argc, char argv[]);
    103107}}}
    104 
    105 On souhaite que le prototype du programme 'pgmg' soit le suivant:
     108Le programme 'pgmg' a maintenant deux arguments obligatoires et deux arguments optionnels:
    106109{{{
    107110pgmg [-c command_file_name] [-v] input_file_name output_file_name