Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1139 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  comment bien utiliser strtol ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comment bien utiliser strtol ?

n°780349
psychotek
Posté le 28-06-2004 à 12:36:32  profilanswer
 

salut all
 
sur les bons conseils de certains d'entre vous (dont Taz), je souhaite utiliser strtol, et notemment la gestion des erreurs. ma question : comment faire ?
 
voila un bout de code pour expliciter le problème :

Code :
  1. long int note = strtol(ma_chaine, NULL, 10);
  2.       if(/*j'ai pas d'erreur*/)
  3.  ma_fonction();


 
qu'est-ce que je dois mettre à la place de /*j'ai pas d'erreur*/ ? j'ai lu dans de la doc que j'erreur renvoyée est ERANGE, mais je ne sais pas comment exploiter ce retour. quelqu'un pourrait m'expliquer svp ?
 
merci beaucoup.

mood
Publicité
Posté le 28-06-2004 à 12:36:32  profilanswer
 

n°781772
psychotek
Posté le 29-06-2004 à 19:57:39  profilanswer
 

sivouplé

n°781774
Taz
bisounours-codeur
Posté le 29-06-2004 à 20:03:45  profilanswer
 

lis un peu la doc, et vois ce que tu peux mettre à la place de NULL, à tous hasard :D
 
donc regarde déjà endptr, pourvoir ce qu'il s'est passé, puis la valeur de retour et errno

n°782403
psychotek
Posté le 30-06-2004 à 13:59:32  profilanswer
 

ben justement je l'ai lue la doc, et j'ai pas vraiment compris... bon c'est vrai que je ne suis pas très malin, de base, ça aide pas. ;-)
j'ai souvent besoin d'un exemple pour comprendre. on se demande comment j'ai bien pu apprendre à lire.
 
à part ça, je vais essayer de faire des tests, on verra bien. merci pour ton enigme ;-)

n°782414
Taz
bisounours-codeur
Posté le 30-06-2004 à 14:05:49  profilanswer
 

d'une part, surveille la valeur de retour : is c'est LONG_MAX ou LONG_MIN, y a sans doute eu overflow. si c'est 0, regarde comment est positionné endptr (le deuxième paramètre de sortie) qui pointe vers le premier caractère non convertit
 

Code :
  1. if(strtol(str, &endstr, 10) == 0 && str == enstr)
  2. { /* c'était pas un nombre */ }


Message édité par Taz le 30-06-2004 à 14:18:05
n°782590
psychotek
Posté le 30-06-2004 à 15:40:00  profilanswer
 

merci pour ton exemple, ça m'aide beaucoup (j'étais en cours de comprentissage)

n°782597
Taz
bisounours-codeur
Posté le 30-06-2004 à 15:47:47  profilanswer
 

lis bien la documentation de toutes façons

n°792832
yawen
Posté le 11-07-2004 à 09:38:15  profilanswer
 

erf, serais-ce un Taz poli et serviable que j'ai vu là ? Personnellement, je trouve que c'est mieux comme ça...

n°792833
cricri_
Posté le 11-07-2004 à 09:40:35  profilanswer
 

s'pas normal, y doit être malade ...  :whistle:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  comment bien utiliser strtol ?

 

Sujets relatifs
Comment s'identifier automatiquement sur un site et utiliser inet ?[PHP] Comment utiliser le résultat d'une requete sans recharger
Utiliser une variable dans un autre fichier[ASP.NET] Utiliser un Timer pour raffraichir un datagrid ?
utiliser OCI avec oracle 7[RMI]Tester si il Existe bien un Serveur a une @Ip
Probleme de synchronisation de bases MySQL: utiliser SQLyog ?Utiliser un __gnu_cxx::stdio_filebuf pour lire un fichier
[resolu]Ais je bien passer les arguments par adresse à ma fonction ?Rencontre HFR: où ? (à part DTC bien sur)
Plus de sujets relatifs à : comment bien utiliser strtol ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR