Problème de passage d'arguments

pcmanprogrammeur Messages postés 126 Date d'inscription dimanche 27 mars 2005 Statut Membre Dernière intervention 16 octobre 2010 - 8 janv. 2006 à 12:11
pcmanprogrammeur Messages postés 126 Date d'inscription dimanche 27 mars 2005 Statut Membre Dernière intervention 16 octobre 2010 - 8 janv. 2006 à 13:43
Bonjour!

Lorsque je tape



main(int argc,char *argv[])

{

int cle;

cle=*argv[1];

printf("%d\n",cle);

}



puis j'essai :



./MonProg 3



J'ai 51 qui s'affiche et non pas 3

Comment cela se faisse? Merci.

A+

2 réponses

luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
8 janv. 2006 à 12:29
51 c'est le code ascii de 3.

Tu recois des chaines de caractères, et pas des entiers:

argv[1] = "3".



A toi de faire les conversions avec les fonctions appropriées.
0
pcmanprogrammeur Messages postés 126 Date d'inscription dimanche 27 mars 2005 Statut Membre Dernière intervention 16 octobre 2010
8 janv. 2006 à 13:43
Ok merci!!!
J'ai trouvé c'est atoi la fonction.
0
Rejoignez-nous