Bonjour,

Je ne suis pas très familier des "subtilités" du C++ et j'ai un soucis avec la conversion et concaténation de chaînes de caractère. Voilà mon problème :

J'ai deux int indépendants: 11 et 22
je veux obtenir lun char* de la sorte : "11-22"

Et ça, ça ne marche pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
char* data;
char converter [8];
 
data = itoa(11, converter, 10);
data = strcat(data, "-");	
data = strcat(data, itoa(22, converter, 10));	
printf("Data : %s", data);
Ca m'affiche : Data : 2222.
En fait ça marcherait si j'utilisais une variable (converter) différente dans chaque itoa... Sauf que j'ai un nombre variable d'entier à convertir, ça m'arrangerait de réutiliser le même "buffer" à chaque fois.

PS : Ma chaîne data doit alimenter la fonction "send" d'un socket. Donc je ne peux pas jouer avec des "string" C++ je crois. Ou alors il faut que je cherche comment convertir un char* en string.