Conversion d'entiers et concaténation (itoa + strcat)
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:
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.