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

Visual C++ Discussion :

[débutant] cast string->int


Sujet :

Visual C++

  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 112
    Par défaut [débutant] cast string->int
    AU préalable:
    - je suis sous visual C++ 6.0
    - J'utilise MySQL avec MySQL++

    Mon problème:

    Je récupère une structure MYSQL_ROW que je nomme pROW.

    Le premier champs de la table et donc pointé par pROW[0] est un int.
    Je veux pouvoir travailler dessus en tant que int.

    Seulement La structure mysql_row converti tout en string.

    Il est donc nécessaire que je cast pROW[0].

    Sur la FAQ j'ai vu des fonctions tel strtod ou strtol qui permette de caster en double ou en long.
    En parcourant le net, j'ai vu de rare référence à strtoi mais je n'ai pas réussi à l'utiliser.

    Comment faire?

  2. #2
    Membre éclairé Avatar de dockurt2k
    Inscrit en
    Juillet 2006
    Messages
    91
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Juillet 2006
    Messages : 91
    Par défaut
    C'est dans la faq (si j'ai bien compris ta question) :
    http://c.developpez.com/faq/cpp/?pag...NGS_convert_to

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 112
    Par défaut
    Citation Envoyé par dockurt2k
    C'est dans la faq (si j'ai bien compris ta question) :
    http://c.developpez.com/faq/cpp/?pag...NGS_convert_to
    OUi c'était bien le sens de ma question.

    Et je cherche vraiment mal dans la FAQ pardon
    un jour j'y arriverai promis si si

    J'ai même trouver encore mieux http://c.developpez.com/faq/cpp/?pag...RINGS_strtonum

    Merci

    Allez hop résolu

  4. #4
    Membre expérimenté Avatar de Rupella
    Inscrit en
    Février 2005
    Messages
    286
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 286
    Par défaut
    Si je peux me permettre, tu te compliques la vie, mais pour récupérer des données des champs de tables MySQL, tu n'as pas besoin de les stocker dans des string puis de les convertir !

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Query query = m_pMySQLCon->query();
    query << _T("SELECT TOTO FROM TITI");
    Result res = query.store();
    if ( !res || m_pMySQLCon->affected_rows() == 0 )
    {
      // pas de données
    }
    else
    {
       Row row = res.at(0);
       int iToto = row["TOTO"]; // meme chose avec des types entiers ou flotants, string...
    }
    le type de base est string, mais la lib gère la convertion vers les autres types 'basiques' du c++.

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 112
    Par défaut
    J'ai compris ton code et il est clair que c'est plus évident.
    Mais ce sont des fonctions de mysql++?
    Parce que c'est pas du tout comme ça que je utilise cette lib. Les fonctions que j'utilise commencent toutes par mysql_[fonction()].

    De plus j'ai testé :
    il me dit qu'il ne peut convertir un char* en int.

    Petite question subsidiaire du a un oubli: le _T("..") à quoi sert-il?

  6. #6
    Membre expérimenté Avatar de Rupella
    Inscrit en
    Février 2005
    Messages
    286
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 286
    Par défaut
    salut !

    si tu utilises les fonctions en mysql_xxx(), c'est que tu utilises l'api 'C' de MySQL et absolument pas la librairie MySQL++.

    Les objets Query, Result et Row font partie du workspace mysqlpp.

    Pour l'erreur, il faut voir ce qu'attend la fonction qui gere l'operateur [] de l'objet Row.

    enfin, le _T("") c'est une habitude si tu bosses sous Visual Studio, pour utiliser des chaines prédéfinies, sans avoir a te poser la question si tu es en Unicode ou pas.
    La macro se charge de faire la conversion de ta chaine dans le bon format.
    mais c'est propriétaire a MS.

  7. #7
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 112
    Par défaut
    Houlala!!

    Je me disais aussi que ça ressemblait pas trop à du langage objet.

    Tu aurais un lien vers un manuel de référence.

    Là tu me sauves la vie

    J'ai plus qu'à aller changer tout le toutim.

    Merci

  8. #8
    Membre expérimenté Avatar de Rupella
    Inscrit en
    Février 2005
    Messages
    286
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 286
    Par défaut
    lol !

    j'ai pas d'autre référence que la documentation fournie avec la librairie :
    http://tangentsoft.net/mysql++/

    ce qui m'a servi (moi qui en plus ne pipait trop rien aux BD), ce sont les exemples qui sont également fournis avec, et puis, rien ne vaut un ptit coup d'oeil aux sources...

    bon courage, si tu as besoin d'aide, je peux essayer de te guider, je bosse avec cette librairie depuis quelques mois maintenant...

  9. #9
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 112
    Par défaut
    J'ai le même manuel.

    Je le croyais confus mais depuis ta révélation je me suis plongé dedans et finalement la lumière se fait à moi.

    Je pense que ça devrait aller sur la basic mais je garde ton invitation en tête au cas où

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [débutant] convertir string en int
    Par MayOL69bg dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 12/04/2007, 10h20
  2. Probleme de cast de string en int
    Par Oberown dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 26/04/2006, 11h48
  3. Réponses: 4
    Dernier message: 23/11/2005, 17h28
  4. [Débutant] Conversion d'un String en Int
    Par chleuh dans le forum Langage
    Réponses: 9
    Dernier message: 30/12/2004, 13h33
  5. [débutant] String ou int
    Par pingoui dans le forum Langage
    Réponses: 42
    Dernier message: 16/09/2004, 09h16

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