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

 C Discussion :

convertir une chaine en entier >2147483647


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 45
    Par défaut convertir une chaine en entier >2147483647
    Bonjour à tous,

    Je sais qu'à la base ma question est fréquemment posée mais j'ai déjà cherché et j'ai pas trouvé une réponse à mon problème.
    En fait je dois convertir des chaines qui correspondent à des entiers > 2147483647 =2^31-1. Du coup strtol et strtod ne marchent pas.

    Des idées ?

    Merci,

  2. #2
    Membre Expert Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Par défaut
    Citation Envoyé par sanzero Voir le message
    Bonjour à tous,

    Je sais qu'à la base ma question est fréquemment posée mais j'ai déjà cherché et j'ai pas trouvé une réponse à mon problème.
    En fait je dois convertir des chaines qui correspondent à des entiers > 2147483647 =2^31-1. Du coup strtol et strtod ne marchent pas.

    Des idées ?

    Merci,
    Ton résultat (l'entier) tu le stockes dans quel type de données ? Tu es sous quel OS ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 45
    Par défaut
    J'ai essayé avec plusieurs types int double float long mais ça marche pas.
    Sinon je suis sous windows XP

    Merci

  4. #4
    Membre Expert Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Par défaut
    Ok, donc tu ne sais pas trop comment chercher, c'est ça ton problème.
    Pas grave !!! On ne fait pas du 64bit tous les jours (quoi que ... c'est l'avenir !!)

    Essaie : "strtol 64 bit" dans google. Le 1er lien (msdn) est super intéressant.

    Pour travailler sur des entiers 64bit, il faut peut-etre un SDK particulier.

    Tu codes avec quoi ?

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 104
    Par défaut
    Il faut utiliser la fonction strtoll : http://linux.die.net/man/3/strtoll
    La fonction renvoie une valeur en long long int, qui correspond à une taille d'au moins 64 bits.

  6. #6
    Membre Expert Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Par défaut
    Citation Envoyé par jeroman Voir le message
    Il faut utiliser la fonction strtoll : http://linux.die.net/man/3/strtoll
    La fonction renvoie une valeur en long long int, qui correspond à une taille d'au moins 64 bits.
    Mouais !! Sous Windows il va avoir du mal à trouver cette fonction!
    D'où ma question précédente à propos de l'OS !!!!!!

  7. #7
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 104
    Par défaut
    Citation Envoyé par fregolo52 Voir le message
    Mouais !! Sous Windows il va avoir du mal à trouver cette fonction!
    D'où ma question précédente à propos de l'OS !!!!!!
    Quel rapport avec Windows ? C'est une fonction C (C99 pour être plus précis).

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/02/2011, 17h27
  2. Réponses: 16
    Dernier message: 01/09/2008, 20h25
  3. convertir une chaine en entier long
    Par boulhous dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 02/08/2007, 22h22
  4. Réponses: 6
    Dernier message: 09/04/2006, 16h26
  5. [VB]Convertir une chaine de caractere en entier
    Par budylove dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 21/02/2006, 11h06

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