Convertation d'un entier en chaine de caractere

malcolm007 -  
 Yoda -
Bonjour,
je veux concaténer un entier avec une chaîne de caractère mais la problème je peut pas concaténer ses deux donc je dois convertir l'entier en une chaîne comment faire ça
exemple
int i=6;
char s[200];
char='blablabla';
je veux concatener 6 a la fin du chaine s
s devient 'blablabla6'



A voir également:

4 réponses

malcolm007 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
dsl mais ça marche pas
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Tu dois utiliser sprintf.
0
malcolm007 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
comment donne moi le syntaxe avec un exemple pour bien comprendre
0
Yoda
 
Bonjour,

tu peux utiliser sprintf() de stdio.h

int i=6;
char str [50];
char s[200];
sprintf(str,"%d ",i);
strcpy(s,"blablabla");
strcat(s,str);
printf("%s\n",s);

Tu peux aussi utiliser itoa() de stdlib.h (non standard)


int i=6;
char str [50];
char s[200];
itoa (i,str,10);
strcpy(s,"blablabla");
strcat(s,str);
printf("%s\n",s);

A+.
0
malcolm007 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
m6 BEAUCOUP ca marche tres bien
0
malcolm007 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
l'inverse c marche pas chaine vers entier
0
Yoda
 
l'inverse de chaine vers entier se fait avec atoi() de stdlib.h

int i;
char str [50];
strcpy(str,"6");
i = atoi (str);
i++;
printf("i=%d\n",i); //i=7
0
malcolm007 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
m6 beaucoup mon ami
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Yoda,
Effectivement, itoa() n'est pas standard, donc autant ne pas l'utiliser.
atoi() est obsolète. Il faut plutôt utiliser strtol().
C'est dommage de ne pas profiter de la puissance de sprintf() et d'utiliser strcat().

malcom007,
int i=6; 
char str [255]; 
char s[200]; 
strcpy(s,"blablabla"); 

sprintf(str,"%s%d",s,i); 
printf("%s\n",s);
0
fjbvqlkjhv
 
Salut !

Il faut que tu fasse i.ToString();

Edit : je dis des bétise. On peux tout simplement faire char+i maintenant ;)
-1
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Tu confonds avec un maître langage. ..
0
fjbvqlkjhv Messages postés 315 Date d'inscription   Statut Membre Dernière intervention   27
 
Voui, le c# ^^ toute mes confuses
0