Convertion chaine de caractere commencant par 0 en entier
humnanamouch
Messages postés10Date d'inscriptionmardi 11 janvier 2005StatutMembreDernière intervention20 mars 2006
-
6 mars 2005 à 12:32
humnanamouch
Messages postés10Date d'inscriptionmardi 11 janvier 2005StatutMembreDernière intervention20 mars 2006
-
7 mars 2005 à 14:55
bonjour
En fait j'ai une chaine de caractere avec 8 chiffres qui correspond à un code ascii et je voudrais pouvoir recuperer le caractere qui correspond à ce code.
Je pensais donc convertir la chaine de caractere en entier avec la fonction "atoi" mais comme le nombre est "00001001" cela me renvoie que 1001. Donc impossible d'avoir un code sur 8 bits.
humnanamouch
Messages postés10Date d'inscriptionmardi 11 janvier 2005StatutMembreDernière intervention20 mars 2006 7 mars 2005 à 14:55
merci pour ces reponses. je m'en suis inspiré et j'ai reussi a faire ce que je voulais
int code_ascii=0;
int j,k;
char buf[7];
/*parcour de toute la chaine de caractere*/
for(j=0;j<8;j++)
{
if(buf[j]=='1')
{/*conversion du caractere en un entier*/
var_tmp=1;
/*calcul de la puissance de 2 selon la place dans le code pour ecriture en decimale*/
for(k=0;k<(7-j);k++)
var_tmp=var_tmp*2;
}
else
var_tmp=0;
code_ascii=code_ascii+var_tmp;