Help !!Hex2dec

Bonjour,

en essayant de réaliser une fonction de conversion de l'exadecimal au decimal, j'ai pu ellaborer la fct suivante mais le probeme se pose au niveau de l'execution vu que le resulat est tjrs faux " ex (137)16=(113)10 alors qu'il m'affiche 55269"
pouvez vs m'aider et merci d'avance
#include<stdlib.h>
#include <stdio.h>
#include<iostream.h>
int hex2dec (unsigned char hex[4],int);
int main()
{
unsigned char v[4];

cout<<"enter le nembre en hexa"<<endl;
cin>>v[4];
int i=hex2dec(v,4);
cout<<i;
return 0;
}
int hex2dec (unsigned char hex[4],int nombre)
{
int resultat = 0;

int i;

for (i=0;i<nombre;i++)

{

resultat = resultat*16 +hex[i];

}

return resultat;

}
Configuration: Windows XP
Internet Explorer 6.0

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. Bonsoir,

    voici un code qui fonctionne.
    Il n'est absolument pas pédagogique, mais il fonctionne.

    #include <stdio.h>
    #include <stdlib.h>

    int main()
    {
    int n;

    if (scanf("%d", &n) == 1)
    printf("%x\n", n);
    return (EXIT_SUCCESS);
    }

    @+