Petit problème sur unmini programme C
Fermé
mickmac
Messages postés
413
Date d'inscription
jeudi 25 août 2011
Statut
Membre
Dernière intervention
15 août 2019
-
30 oct. 2012 à 10:04
mickmac Messages postés 413 Date d'inscription jeudi 25 août 2011 Statut Membre Dernière intervention 15 août 2019 - 1 nov. 2012 à 13:43
mickmac Messages postés 413 Date d'inscription jeudi 25 août 2011 Statut Membre Dernière intervention 15 août 2019 - 1 nov. 2012 à 13:43
A voir également:
- Petit problème sur unmini programme C
- Programme demarrage windows 10 - Guide
- Programme (x86) ✓ - Forum Windows
- Petit colis distribution - Forum Réseaux sociaux
- Petit 3 ✓ - Forum Word
2 réponses
DarkAurora
Messages postés
417
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
21 janvier 2013
27
31 oct. 2012 à 08:47
31 oct. 2012 à 08:47
La totalité de ton programme est présent?
Je ne vois pas ou tu interroge l'utilisateur pour recevoir les informations et je suppose que ta fonction est 'atoi', dans ce cas si le prototype est 'atoi('entier', 'caractère')' lorsque tu utilise ta fonction tu ne passe qu'un paramètre et donc tu ne récupère qu'un entier...
Je ne vois pas ou tu interroge l'utilisateur pour recevoir les informations et je suppose que ta fonction est 'atoi', dans ce cas si le prototype est 'atoi('entier', 'caractère')' lorsque tu utilise ta fonction tu ne passe qu'un paramètre et donc tu ne récupère qu'un entier...
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié par [Dal] le 31/10/2012 à 09:46
Modifié par [Dal] le 31/10/2012 à 09:46
Salut mickmac,
Si y doit accueillir un char, autant le déclarer comme tel :
Ensuite, vu que argv est un tableau de pointeurs sur des char, pour affecter un char provenant d'un élément du tableau, tu dois déréférencer le pointeur :
Cela devrait suffire.
Mais le contrôle d'erreur est minimal.
Par exemple, tu pourrais vérifier si le atoi pour x ne renvoie pas 0, ce qui indiquerait une erreur de conversion.
Enfin, utiliser strtol est sans doutes mieux : http://www.cplusplus.com/reference/cstdlib/strtol/
Dal
Si y doit accueillir un char, autant le déclarer comme tel :
char y ;
Ensuite, vu que argv est un tableau de pointeurs sur des char, pour affecter un char provenant d'un élément du tableau, tu dois déréférencer le pointeur :
y=*argv[2];
Cela devrait suffire.
Mais le contrôle d'erreur est minimal.
Par exemple, tu pourrais vérifier si le atoi pour x ne renvoie pas 0, ce qui indiquerait une erreur de conversion.
Enfin, utiliser strtol est sans doutes mieux : http://www.cplusplus.com/reference/cstdlib/strtol/
Dal
mickmac
Messages postés
413
Date d'inscription
jeudi 25 août 2011
Statut
Membre
Dernière intervention
15 août 2019
6
1 nov. 2012 à 13:43
1 nov. 2012 à 13:43
Merci beaucoup je vais essayé ça dès que je pourrais. Il e semblais bien que c'était un problème de pointeur
Le x donne bien la valeur qu'il faut .
Le x donne bien la valeur qu'il faut .
31 oct. 2012 à 09:38
http://www.cplusplus.com/reference/cstdlib/atoi/
l'utilisateur est sensé entrer les paramètres à la ligne de commande.
Dal
31 oct. 2012 à 09:46