convertir en chaîne HEXADÉCIMALE à la Décimale dans arduino

j'ai une Chaîne Hexadécimale comme ceci : "0005607947" et souhaitez le convertir en nombre Décimal , je l'ai testé sur ce site et correctement convertir un nombre décimal et la réponse est : "90208583" mais lorsque j'utilise ce code j'obtiens une valeur incorrecte !
où de mon code est mal ou n'ont tout un , un nouveau code pour ce problème ?

long int decimal_answer = getDEC("0005607947") ;

long int getDEC(String str110) {
   long int ID = 0 ;
   int len = str110.length() ;
   char buff[len] ;
   int power = 0 ;

   for(int i = 0 ; i <len ; i++) {  buff[i] = str110.charAt(i); }

   for(int i = (len-1) ; i >=0 ; i--) { 
      int num = buff[i] - '0' ;
      ID = ID + num * pow(16 , power) ;
      power = power + 1 ;   
     }
    Serial.println(String(ID , DEC));
  return ID ;
}



//thanks , i also use this but , get error : invalid conversion from 'void*' to  'char**' [-fpermissive]
unsigned int SiZe = sizeof(F_value) ;
char charBuf[SiZe];
F_value.toCharArray(charBuf , SiZe);

long decimal_answer = strtol(charBuf , NULL , 16);
Serial.println(decimal_answer , DEC);
  • peut int magasin 90208583? essayez de long int
InformationsquelleAutor hossein | 2015-08-05