Bienvenue sur Forum Algérie, la communauté du site algerie-dz.com, votre fenêtre sur l'Algérie et le monde!
Pour avoir un accès total au forum algerie-dz.com, vous devez vous inscrire pour un compte gratuit. En tant que membre du forum, vous pourrez participer aux discussions, communiquer avec les autres membres et rejoindre le Club des Membres.
Si vous rencontrez des difficultés à vous inscrire ou à vous identifier sur Forum Algérie, n'hésitez pas à contacter l'équipe du support algerie-dz.com.
argv[0]: contiendra le nom de ton programme exécutable
argv[1]: le 1er argument sous forme de chaine de caractère.
argv[2]: le 2ème argument sous forme de chaine de caractère.
L'instruction "atoi" permet de les convertir en "int"
if (argc != 3)
{
printf("\nErreur : nombre invalide d'arguments");
printf("\nUsage: %s int int\n",argv[0]);
return(EXIT_FAILURE);
}
a = atoi(argv[1]);
b = atoi(argv[2]);
printf("\nLe produit de %d par %d vaut : %d\n", a, b, a * b);
return(EXIT_SUCCESS);
}
Dernière modification par minen, 29 décembre 2006, 01h47.
Motif: merci a vous voici le code
en fait l'instruction en rouge decrit a l'utilisateur au cas ou ce dernier n'aurait pas utilise le nombre d'arguments requis, l'usage normal du programme en question.
Prenons un exemple: je ne connais pas le nom de ton programme, nous allons donc tout simplement l'appeler "prog". Apparemment, l'usage normal serait qu'il soit suivi de 2 entiers lors de son appel, mais supposons que l'utilisateur se trompe et le fasse suivre d'un seul entier:
prog 35
alors le nombre d'arguments seraient different de 3, et le programme affichera le message d'erreur suivant:
Mauvais nombre d'arguments.
Usage: prog int int
J'espere que j'ai ete clair. Si t'as d'autres questions, n'hesite pas, je ne vais pas me coucher de suite...
int main(int argc, char *argv[ ]){
if (argc != 3)
printf ("Mauvais nombre d'arguments.\n");
printf("\nUsage: %s int int\n" argv[0]);
Cela veut dire que ton programme ne s'exécute que lorsque le nombre des arguments est de deux style:
programme.exe argument1 argument2
sinon il n'exécutera que les deux "printf" comprise dans le "IF"
"Mauvais nombre d'arguments."
"programme.exe int int"
argc est un entier qui compte le nombre de chaînes de caractères, séparées par un ou plusieurs blanc (espace ou tabulation), dans la ligne de commande. Le nom de la commande est donc inclu dans le compte de la variable argc. Une commande shell sans argument aura donc un argc = 1.
argv est un pointeur sur un tableau de pointeurs sur des chaînes de caractères, celles-ci correspondant à celles tapées sur le clavier. Chaque pointeur du tableau pointe sur le début des chaînes respectives. Le tableau est terminé par un pointeur nul indiquant qu'il n'y a plus d'arguments.
Dernière modification par hakkimm, 29 décembre 2006, 01h42.
Laisser un commentaire: