[C] int <--> char

Résolu/Fermé
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 2 juin 2005 à 15:16
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 2 juin 2005 à 16:14
Bonjours,

Pour le serveru, j'aurais besoin de passer un entier du serveur au client, pour cela je dois lemettre dans un buffer, mais à la receprtion il n'affiche pas l'entier.
Je voudrais donc savoir comment récupérer l'enter coté client ?

merci
++
A voir également:

3 réponses

kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
2 juin 2005 à 16:14
Ben en fait toute cees solution marche, j'ai choisis les première qui venait en faites, c'est à dire :

pour convertir une chaine en long int :
char *end;
char buf[256] = "45";
long int n = strtol(buf,&end,10);

Et l'inverse :
n=4;
sprintf(buf,"%d",n);


Merci les gars, j'vous paye une tournée de bière franboise / harend / citron / kiwi

++
2
Luffy =) Messages postés 365 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 19 mai 2006 110
2 juin 2005 à 15:23
Pour le serveru
et pour le clinte c'est pour quand ??? ok je sors... --->

bref si tu le récupères dans un char, tu peux utiliser la fonction sscanf() :
char buf='1';
int i=0;
sscanf(buf, "%d", $i);

et voili !

++ kij :-)
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
2 juin 2005 à 15:25
int i=0;
sscanf(buf, "%d", $i);


On est pas en PHP la !!! lol

merci et l'inverse ? pareil ?
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
2 juin 2005 à 15:34
Arrf.. en fait l'inconvénient avec ta méthode c'est qu'il faut absolument que l'espace nécessaire soit déjà allouer...

Tant pis, je jetterai un coup d'oeil dans la bible en rentrant ce soir !

merci
++
0
Luffy =) Messages postés 365 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 19 mai 2006 110
2 juin 2005 à 15:48
en fait l'inconvénient avec ta méthode c'est qu'il faut absolument que l'espace nécessaire soit déjà allouer... 
ben si tu arrives à me donner une fonction en C où tu peux mettre une valeur dans une mémoire non-allouée, ben tu m'appelles !!!

pour l'inverse ça doit être comme en php (en fait c'est plutot le php qui a copié le C) c'est-à-dire sprintf(...)

mouarf !
0
moi j'avais fais un buffer en char*.
Pour passer un int dedans :
int i;
memcpy(buffer,&i,sizeof(int);

et pour le récupérer:
int i;
memcpy(bufffer,&i,sizefo(int));

Je sais pas si ça peut aider...
0