/* 26-janvier -2010 v1.01 IFT1169 - M.Lokbani gcc4.4.0 12-novembre -2005 v1.00 IFT1166 - M.Lokbani code + gcc3.4.2, +comments contact: lokbani@iro.umontreal.ca Copyright (C) 2005 Universite de Montreal Departement d'informatique et de Recherche Operationnelle Mohamed Lokbani -- Tous Droits Reserves -- All Rights Reserved -- Description: Ce fichier decrit l'utilisation de argc et argv pour la lecture des arguments se trouvant sur la ligne de commande. Cet exemple fait suite a l'annexe 1 du tp#2. Remarques: Dans les langages C et C++, l’argument 0 est le nom du programme (ce n’est pas le cas pour le langage java ou le nom du programme n’est pas pris en compte). Il faut declarer la fonction main de la maniere suivante pour pouvoir acceder a ces arguments : int main (int argc, char *argv[]) { //etc.} argc : contient le nombre d’arguments de la ligne de commande. argv : est un tableau de pointeurs sur les arguments de la ligne de commande. */ #include #include using namespace std; void test_nbre_args(int nbre_args, char **list_args){ /* Attention dans le calcul du nombre d'arguments, on prend en compte le nom du programme executable. On s'attend a recevoir 3 arguments sur la ligne de commande + le nom du programme donc 4 au total. */ if (nbre_args!=4){ cerr << "\n\nAttention, on s'attendait a avoir 3 arguments sur la ligne de commande\n"; cerr << "Il n'y avait que " << (nbre_args-1) << " argument(s) sur la ligne de commande\n"; cerr << "La ligne de commandes doit etre sous cette forme: argcv(.exe) argument_1 argument_2 argument_3\n\n"; cerr << "Et nous avons recu plutot cette ligne: " << list_args[0]; for (int i=1;i