IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

conversion de String en Num [FAQ]


Sujet :

SL & STL C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonsoir,

    Luc Hermitte vous d�tes
    Ceci dit, il faut toujours tester le r�sultat d'une lecture sur un flux.
    Ne pourrait-on pas dire qu' il faut toujours tester le flux avant de le soumettre � un r�sultat ?

    Cordialement.

  2. #2
    Expert confirm�
    Avatar de Luc Hermitte
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2003
    Messages
    5 296
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 5 296
    Par d�faut
    Aussi. Mais ce n'est qu'un cas particulier de toutes les op�rations qui peuvent modifier quelque chose m�me en cas d'�chec.

    La bonne m�thode veut effectivement que l'on r�cup�re un r�sultat interm�diaire ou incomplet dans un temporaire et que si toutes les �tapes de l'op�ration � r�aliser sont correctes, alors on peut valider les changements.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne r�ponds � aucune question technique par le biais de ce m�dia. Et de toutes fa�ons, ma BAL sur dvpz est pleine...

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonsoir,

    J' appr�cie tous vos messages, malheuresement apr�s v�rification, je me suis aper�u, que vos "mod�rateurs" � la mord moi le noued, me privaient des retours d' information.

    Il n'y a rien de "strat�gique" ou peut �tre "tragique" dans les messages que j' envoie.

    Honte � tous ces petits commisaires politique, qui nous g�chent la vie !

    SVP Fa�tes en sorte que je sois inform� du retour des messages que j ' envoie.

    J' aime bien le C++, mais pas de mani�re unilat�rale...

    Cordialement.

  4. #4
    Expert confirm�
    Avatar de Luc Hermitte
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2003
    Messages
    5 296
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 5 296
    Par d�faut
    <HS>
    Euh ... Les mod�rateurs n'ont rien � voir avec le fait que l'on soit pr�venu ou non si des messages sont publi�s.
    Le site a visiblement eu un probl�me dans la nuit. Possiblement r�gl� vu que j'ai re�u plusieurs notifications dans la matin� de messages que j'avais d�j� lus ou auxquels j'avais d�j� r�pondu.

    Cordialement.
    </>
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne r�ponds � aucune question technique par le biais de ce m�dia. Et de toutes fa�ons, ma BAL sur dvpz est pleine...

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonjour,

    Bizarre le comportement du site concernant les notifiications de r�ponses aux messages !

    Codialement.

  6. #6
    Membre averti
    Inscrit en
    F�vrier 2004
    Messages
    21
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2004
    Messages : 21
    Par d�faut
    Bon, j'ai mis le tag [Resolu] � ce poste, laissez-le mourir en paix.

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonjour,

    Helvenir �crit
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    template< typename T > 
     T StrToNum( const string& s ) { 
         string tmp; 
         // Un simple TRIM 
         string::size_type idx = s.find_last_not_of( ' ' ); 
         if ( idx != string::npos ) 
             tmp = s.substr( 0, idx + 1 ); 
     
         istringstream iss( tmp ); 
         T v; 
         if ( !(iss >> v ) || !iss.eof() ) throw runtime_error( "bad_cast" ); 
         return v; 
     }
    Je ne vois pas comment acc�der � cette fonction ! Peut-�tre manque-t-il un argument pour sp�cifier le type T .

    Ceci d�t votre m�thode est tr�s judicieuse ( moins mauvaise que la mienne qui rel�ve de la torture mentale ! )

    Je l'ai corrig� (la votre) sur mon c++, et me suis aper�u que sous linux "runtime_error" ne faisait plus partie de <exception> mais de <stdexcept>.

    Mais cela est un autre sujet !

    Cordialement.

  8. #8
    Membre exp�riment�
    Avatar de David Fleury
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    253
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 253
    Par d�faut
    LH : J'aime bien ton verbe "imbuer"

    DJ:
    sauf erreur (j'ai pas de compilo sous la main)

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
       double valeur = StrToNum< double >( "3.14159" );
    Assiobal: D�sol� d'avoir "polluer" ton poste. En esp�rant que tu aies trouv� la r�ponse � ta question parmis tous ces codes.

  9. #9
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonsoir,

    Hylvenir

    vous d�tes
    Je n' ai pas le compilateur sous la main
    Et bien assurez-vous de disposer du bon compilateur, pour vous apercevoir que votre code est bogu�.

    Selon votre code , il serait possible, de convertir une cha�ne de caract�res sans se soucier du type attendu...

    Vous r�vez !

    Cordialement.

  10. #10
    Membre exp�riment�
    Avatar de David Fleury
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    253
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 253
    Par d�faut
    Puisqu'il faut tout faire...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    #include <iostream>
    #include <sstream>
    using namespace std;
     
    template< typename T >
    T StrToNum( const string& s )
    {
      istringstream iss( s );
      T t;
      iss >> t;
      return t;
    }
     
    int main()
    {
      cout << StrToNum< double >( "3.141592" ) << endl;
      cout << StrToNum< int >( "123456" ) << endl;
    }

  11. #11
    Membre averti
    Inscrit en
    F�vrier 2004
    Messages
    21
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2004
    Messages : 21
    Par d�faut
    Hylvenir,

    pas de probl�me pour la pollution. Juste que je vois mon innocent poste devenir un champs de bataille acharn�.
    Je ne critique pas, je trouve �a "marrant".

  12. #12
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonsoir,

    Hylvenir, J'ai enfin saisi le g�nie de votre StrToNum.

    Malgr� tout il me semble que StrToNum<int>(" - 25 " ) echoue.

    Le code du forum ne permet pas de repr�senter fid�lement les messages envoy�s.

    Vous voyez - 25 l� o� j' ai ecris "espace espace - espace espace espace 25 espace " .


    Ma version "tortur�e" accepte .

    C'est vrai que cela devient "marrant" !

    Cordialement.

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 2 sur 2 Premi�rePremi�re 12

Discussions similaires

  1. Conversion List -> String
    Par Bayard dans le forum G�n�ral Python
    R�ponses: 1
    Dernier message: 27/11/2005, 21h50
  2. Conversion byte [] -> String
    Par MiJack dans le forum Langage
    R�ponses: 3
    Dernier message: 20/10/2005, 18h16
  3. [C#] Conversion System.String en System.Drawing.Color
    Par Silex dans le forum Windows Forms
    R�ponses: 6
    Dernier message: 27/04/2005, 08h21
  4. R�ponses: 3
    Dernier message: 26/05/2004, 23h03
  5. Conversions de String � Integer
    Par Rank dans le forum Langage
    R�ponses: 5
    Dernier message: 06/08/2003, 16h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo