Conversion char int en C

Résolu
crazyghandi Messages postés 323 Statut Membre -  
crazyghandi Messages postés 323 Statut Membre -
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. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut,
    Avec snprintf tu peux le faire ;)
    int a=455;
    char ch[10];
    snprintf(ch,sizeof ch,"%d",a);
    

    Cdlt
    0
  2. crazyghandi Messages postés 323 Statut Membre 19
     
    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
    0
  3. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    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.
    0
  4. crazyghandi Messages postés 323 Statut Membre 19
     
    ok merci je vais regarder ca
    0