Langage C

Fermé
Hocine - 5 oct. 2007 à 16:44
BloodyAngel Messages postés 1479 Date d'inscription mardi 21 juin 2005 Statut Contributeur Dernière intervention 21 juin 2018 - 5 oct. 2007 à 19:02
Bonjour,
comment convertir un paramètre du main en entier (ex. argv[1]='5' -> 5)

2 réponses

Bonjour,

Il faut simplement utiliser la fonction atoi.

#include <stdlib.h>
int atoi( const char *str );

int i = atoi( "512" ); // results in i == 512

Voila
2
BloodyAngel Messages postés 1479 Date d'inscription mardi 21 juin 2005 Statut Contributeur Dernière intervention 21 juin 2018 401
5 oct. 2007 à 19:02
Fais gaffe que la fonction atoi te renverra zéro si ton char n'est pas un nombre entier.
exemple :
int i = atoi("zzz"); <--- te renverra zéro
int i = atoi("0") <--- te renverra zéro également

donc pour bien faire, et si tu risques de rencontrer des zéros dans le cadre de ton programme, il faudra chaque fois vérifier que ton char n'est pas "0", sinon tu l'interprètera à tort comme une erreur...

Par contre si tu ne risques pas de rencontrer de zéro dans ton programme, il n'y a pas de problème.
2