Faire modulo en C++

Résolu
Bonjour,

jai une chaine de caracté sous la forme : fff3

et je veu la transformer en une valeur héxadécimal sous la forme 0x3fff
en C++

qlqun pourai me donner des pistes ???

merci
Configuration: Windows XP
Firefox 1.5.0.12

6 réponses

  1. Modérateur
    Bon ben c'est cool ^^
    0
    1. FRANCHEMENT MAMIEMANDO, TU ES SYMPA, C4EST TOUT A FAIT CE QUE JE VOULAIS, MERCI
      TON PETIT PRORAMME TOURNE A MERVEILLE...

      VOILA, J'AI ECRIS EN FRANCAIS, COMME PROMIS...)

      MERIC ENCORE UNE FOIS.

      A TRES VITE...
      0
      1. Modérateur
        Je ne comprends pas pourquoi la valeur hexadécimale est retournée dans ton char *. Merci de prendre le temps d'écrire en français.

        Partons du principe que tu cherches juste à retourner une chaîne et à mettre un 0x devant.
        #include <stdio.h>
        #include <string.h>
        #include <stdlib.h>
        
        int main(){
            const char *src = "3fff";
            unsigned i,n = strlen(src);
            char *dst = (char *)calloc(sizeof(char),(n+3));
            dst[0] = '0';
            dst[1] = 'x';
            for(i=0;i<n;++i) dst[i+2] = src[n-1-i];
            printf("src = %s\n",src);
            printf("dst = %s\n",dst);
            free(dst);
            return 0;
        }

        Ce qui donne :
        (mando@aldur) (~) $ gcc -W -Wall plop.c
        (mando@aldur) (~) $ ./a.out
        src = 3fff
        dst = 0xfff3

        Je sais pas si c'est ce que tu voulais mais en tout cas c'est ce que j'ai compris.

        Bonne chance
        0
        1. Modérateur
          Personnellement je ne comprends rien à la conversion que tu essayes de faire (en particulier dans le post <2>). Pourquoi fff3 de viens 3fff ?
          0
          1. ben au faite, dans un fichier XML, jai des valeur Héxadécimal ecrtient sous la forme (invérsser de héxadécimal ) :

            par exemple la valeur apparésse sous la forme fff3 04080103 sont en réalité des valeur héxadécimale qui s'écrit sous la forme

            0x3fff 0x03010804

            donc voila,

            j'utilise la librérie TinyXml pour parsser mon fichier XML, j'arrive a récupérer ses valeur : fff3 04080103 dans un char, mais maintenant je doit les afficher sous la forme héxadécimal 0x3fff 0x03010804 ou les stocker dans une variable avec leur valeur héxadécimal....

            j'espere que ta compris ce que je recherche a faire, et si tu pense que cest simple a faire, STP, aide moi

            Davance, un gro merci
            0
        2. Soit tu le codes toi-même en quelques lignes,
          Soit tu utilises la fonction strtol
          0
          1. ouai, jai regarder des exemple de la fonction strtol, jai essayer de lutiliser mais jy arrive pas,

            pour tu stp me donner un exemple qui marche ??

            exemple, transformer : 00000800010000000d08

            en
            0x00080000
            0x0001
            0x00
            0x00
            0x080d

            merci merci
            0