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 :

Transformer un hexadecimal en decimal


Sujet :

C

  1. #1
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 52
    Par défaut Transformer un hexadecimal en decimal
    Bonjour,

    Je souhaiterais realiser une procedure permettent de transformer un hexadecimal en int.
    Le probleme qui se pose, c'est que l'hexadecimal est un string, dont la valeur depasse largement la valeur maximale de int.

    Du coup je pense au'il faudrait passer par un tableau d'int, et faire de la reallocation, mais je ne vois vraiment pas comment transformer alors l'hexadecimal en decimal...

    Si quelqu'un a une idee de procedure a suivivre, je lui serai tres reconnaissant

  2. #2
    Membre émérite Avatar de orfix
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 707
    Par défaut
    Renseignes toi sur la fonction strtol() et companie.
    n'oublies pas de spécifier 16 comme base en dernier paramètre.

  3. #3
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Parser un Grand Entier sous forme hexadécimale n'est pas vraiment un problème, et ça peut se faire en une seule allocation si tu connais la taille de la chaîne de caractères.

    Par contre, pour faire un affichage décimal du même nombre, ça va être beaucoup plus dur, vu qu'il te faudra faire des divisions de Grand Entier par dix.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre émérite Avatar de orfix
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 707
    Par défaut
    Ta chaîne tu voudrais la convertir en une série d'entier ou en un seul Grand entier ? ( un exemple serais le bienvenue )
    Si c'est le deuxième cas renseignes toi sur les bibliothèques de gestion de grand nombre Bignum

  5. #5
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 52
    Par défaut
    Merci pour vos réponses!

    Alors pour vous répondre:

    - strtol: j'y avais bien pensé, mais elle sort en int. Et les nombres que j'ai à traiter dépassent malheureusement la longueur d'un int!

    - je connais en effet la taille de la chaine de caractère. Par contre je ne vois pas trop en quoi ca peut m'aider!
    Je veux bien faire des divisions, mais comment on fait pour diviser un chaine de caractères par 10?

    - Au final je dois juste afficher le nombre sous forme décimale. Donc si c'est une série d'entier c'est très bien, vu qu'il n'y aura qu'un boucle à faire. Par contre, comme je fais un plugin pour un programme (Wireshark si vous voulez tout savoir), je préférerais éviter d'utiliser des bibliothèques extérieures!

Discussions similaires

  1. hexadecimal to decimal
    Par n5Rzn1D9dC dans le forum x86 32-bits / 64-bits
    Réponses: 4
    Dernier message: 17/12/2013, 13h16
  2. Réponses: 21
    Dernier message: 30/03/2009, 00h00
  3. conversion mot de 4 octets hexadecimal en decimal
    Par adelsunwind dans le forum VBA Access
    Réponses: 7
    Dernier message: 03/03/2009, 22h47
  4. Convertir un hexadecimal en decimal
    Par yann87 dans le forum Débuter
    Réponses: 6
    Dernier message: 24/09/2008, 12h40
  5. convertion valeur hexadecimal en decimal
    Par devdev2003 dans le forum C
    Réponses: 8
    Dernier message: 06/10/2005, 12h35

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