Conversion char int en C

Résolu
Bonjour,

je voudrais convertir un int en chaine de caracteres :

unsigned short *t = u;
printf(" temp : %d ",t);
int x = (int)t;
printf(" temp : %d ",x);
char v = *u;
// char *q = &v;
char *q = (char *)x;
printf(" temp : %s ",q);

et la reponse dans le programme :

temp : 464838 temp : 464838 temp : ç

donc comment stocker "464838" dans q ?

merci d'avanc epour vos reponses
Configuration: Windows XP
Opera 9.62

4 réponses

  1. Contributeur
    Salut,
    Avec snprintf tu peux le faire ;)
    int a=455;
    char ch[10];
    snprintf(ch,sizeof ch,"%d",a);
    

    Cdlt
    1. ok merci javais essaye me pas reussi

      en revanche en declarant direct serial en unsigned short plu de necessite de conversion
      donc plus de probleme

      est ce que par hasard tu sais comment recuperer le poids du fichier ?

      j'ai essaye filesize() mais le compilateur ne reconnait pas la fonction

      merci
      1. Contributeur
        Le poids ?
        Tu veux dire la taille ? Avec lseek() http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man2/lseek.2.html
        taille = 8*lseek(fildes_int, 0, SEEK_END);
        EDIT : en fait, la la taille est donnée en bit. Pour l'avoir en octet, il ne faut pas multiplier par 8.