conversion ASCII-HEX langage c
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

conversion ASCII-HEX langage c



  1. #1
    invite73838812

    conversion ASCII-HEX langage c


    ------

    salut
    je cherche a convertir le plus simplement possible de l'ascii vers l'hexa.
    exemple : 0x41 donne 0x0A
    0x30 donne 0x00
    0x43 donne 0x0C

    merci pour l'aide
    sof

    -----

  2. #2
    Jack
    Modérateur

    Re : conversion ASCII-HEX langage c

    pour un seul caractère ou pour une chaine?

    A+

  3. #3
    Philou67

    Re : conversion ASCII-HEX langage c

    Et 0x47 doit donner quoi ?
    :'( Plus j'apprends, et plus je mesure mon ignorance

  4. #4
    invite73838812

    Re : conversion ASCII-HEX langage c

    Pour une chaine de caractéres. (32octets)

    Merci.

  5. A voir en vidéo sur Futura
  6. #5
    Philou67

    Re : conversion ASCII-HEX langage c

    et ma question ?
    Dernière modification par Jack ; 23/11/2010 à 21h24. Motif: Désolé, erreur de manip: éditer au lieu de citer
    :'( Plus j'apprends, et plus je mesure mon ignorance

  7. #6
    Jack
    Modérateur

    Re : conversion ASCII-HEX langage c

    Citation Envoyé par Amine_34 Voir le message
    Pour une chaine de caractéres. (32octets)

    Merci.
    le plus simple est d'utiliser sscanf():

    Petit programme de test:
    #include <stdio>

    int main()
    {
    int val;
    char chaine[] = "0x1A3";
    sscanf(chaine, "%x", &val);
    printf("la chaine hexa %s vaut %d en decimal et %x en hexadecimal\n", chaine, val, val);
    return 0;
    }
    Ce qui affiche:
    la chaine hexa 0x1A3 vaut 419 en decimal et 1a3 en hexadecimal.

    A+

  8. #7
    Jack
    Modérateur

    Re : conversion ASCII-HEX langage c

    Citation Envoyé par Philou67 Voir le message
    et ma question ?
    Je pense que le problème ne se pose pas puisqu'Amine_34 ne veut traduire que des caractère hexadécimaux.

    A+

  9. #8
    Philou67

    Re : conversion ASCII-HEX langage c

    En lisant la première phrase du premier post
    je cherche a convertir le plus simplement possible de l'ascii vers l'hexa.
    ce n'était pas vraiment clair, mais effectivement, tu as raison, c'est bien une conversion hexadécimale sous forme ASCII vers entier qu'il fallait comprendre, et le scanf est sans doute la manière la plus simple de traiter le cas.

    Cela dit, une chaine de 32 caractères hexadécimaux peut potentiellement se convertir en un entier largement supérieur à la capacité d'un entier long (32bits).
    Peut-être que Amine_34 souhaite alors convertir individuellement chaque chiffre hexadécimal en un entier ? Et le mettre dans un tableau d'entier ?

    Pour convertir un caractère hexadécimal ASCII en entier, on peut utiliser la macro suivante :
    Code:
    #define HEX2DEC(H) (H >= 'A' ? (H-'A'+10) : (H - '0'))
    Cette macro suppose que le caractère est un caractère hexadécimal valide. Sinon, il est possible de tester si c'est le cas avec isxdigit, inclu dans :
    Code:
    #include <ctype.h>
    :'( Plus j'apprends, et plus je mesure mon ignorance

  10. #9
    Jack
    Modérateur

    Re : conversion ASCII-HEX langage c

    je pense qu'avec tout ça Amine_34 aura sa réponse

    On attend ...

Discussions similaires

  1. Conversion int-> ascii en C
    Par invitef57d092a dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 13/07/2010, 09h44
  2. langage C : conversion en binaire d'un fichier en hexa
    Par invitedba13d1f dans le forum Logiciel - Software - Open Source
    Réponses: 13
    Dernier message: 06/07/2009, 09h46
  3. Conversion .hex en .c
    Par invitee0ba7c35 dans le forum Électronique
    Réponses: 8
    Dernier message: 29/03/2009, 12h28
  4. conversion ASCII
    Par invite3abb5cbf dans le forum Logiciel - Software - Open Source
    Réponses: 11
    Dernier message: 06/06/2005, 00h35
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...