Conversion d'une chaîne de caractères en hexa

AnneG35 Messages postés 1 Date d'inscription lundi 25 août 2008 Statut Membre Dernière intervention 25 août 2008 - 25 août 2008 à 15:37
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 25 août 2008 à 19:53
Bonjour,

Je développe un module à intégrer à un serveur, en C++ sous Visual Studio. Les échanges client-serveur sont des requêtes binaires. Pour construire les réponses du serveur, j'ai besoin de concaténer des entiers (sur 8 ou 16 bits) et des chaînes de caractères codées en ASCII (code hexa). Par soucis de simpliciter dans l'écriture et la lecture du code, les chaînes de caractères sont "en lettres" et non en ASCII.
Ce que je voudrais faire, c'est remplir un buffer au fur et à mesure avec une chaîne de caractère codée en ASCII précédée de sa longueur. Par exemple : "Hello word" donnerait 00 05 48 65 6C 6C 6F  00 04 77 6F 72 64.
avec 00 05 : longueur de Hello
48 65 6C 6C 6F = Hello
00 04 : longueur de word
77 6F 72 64 = word

Pour le moment je me suis dit  qu'un  buffer du genre  int8* monMessage = new int8[100]  pourrait aller, mais j'ai des problèmes lors du remplissage.  J'ai aussi un soucis lorsque je veux visualiser le contenu du buffer en faisant un printf("%08X", monMessage); même si je remplis celui-ci avec une valeur du type 0x0005, je m'obtiens pas cette valeur à l'affichage.

Merci pour votre aide

Anne-Gaëlle

1 réponse

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
25 août 2008 à 19:53
0
Rejoignez-nous