Concatenation de chaines en c++
juni
Messages postés
78
Date d'inscription
Statut
Membre
Dernière intervention
-
Gorgo13 Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Gorgo13 Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Salut
je cherche à faire ce squi est marqué dans le tire du message.
La réponse est surement déjà sur le forum, mais le moteur de recherche est HS au moment où j'ecris.
Donc si une âme généreuse voulait bien me répondre ça serait sympa
je cherche à faire ce squi est marqué dans le tire du message.
La réponse est surement déjà sur le forum, mais le moteur de recherche est HS au moment où j'ecris.
Donc si une âme généreuse voulait bien me répondre ça serait sympa
A voir également:
- Concatener chaine de caractere c
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Caractères spéciaux : comment les saisir facilement - Guide
- Chaine tnt gratuite sur mobile - Guide
- Caractere vide - Guide
6 réponses
Bonjour,
Pour concaténer deux objets de types String en, C++, tu peuxutiliser l'opérateur + qui est surdéfini ;).
Sinon en C, tu as :
char* strcat(char* str1, char* str2);
A+
Pour concaténer deux objets de types String en, C++, tu peuxutiliser l'opérateur + qui est surdéfini ;).
Sinon en C, tu as :
char* strcat(char* str1, char* str2);
A+
salut juni !
tu peux essayer ça:
strcat(chaine1,chaine2);
je ne suis pas sur que ça marche: j'ai utilisé cette fonction dans un prog en c sous unix
tu peux essayer ça:
strcat(chaine1,chaine2);
je ne suis pas sur que ça marche: j'ai utilisé cette fonction dans un prog en c sous unix
#include <srtring.h>
void main()
{
char string1[64] = {"Hello. "};
char string2[64] = {"C'est moi. "};
strcat(string1,string2);
printf("%s\n",string1);
}
Au passage, "strcmp" compare deux chaine, mais ne les concatene pas.
void main()
{
char string1[64] = {"Hello. "};
char string2[64] = {"C'est moi. "};
strcat(string1,string2);
printf("%s\n",string1);
}
Au passage, "strcmp" compare deux chaine, mais ne les concatene pas.
merci du coup de main mais apparemment ça marche pas
j'ai essayé d'afficher directement deux chaines concaténees ou de d'abord les insere dans une variable, et dans les deux cas ça plante.
Je travaille sous win XP mais je pense pas que ça ait un rapport.
La llibrairie où se trouve cette fonction, c'est bien string.h ??
j'ai essayé d'afficher directement deux chaines concaténees ou de d'abord les insere dans une variable, et dans les deux cas ça plante.
Je travaille sous win XP mais je pense pas que ça ait un rapport.
La llibrairie où se trouve cette fonction, c'est bien string.h ??
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est bon j'ai trouvé un moyen simple de le faire en c++ (et peut-être aussi en C)
pour concatener 2 chaines a et b :
#include <string.h>
strcmp(a+strlen(a),b);
a+strlen(a) place le pointeur au caractère de fin de chaine de a, et insere b à cet endroit.
il faut juste faire attention à ce que a contienne suffisamment de caractère vide pour inserer b.
pour concatener 2 chaines a et b :
#include <string.h>
strcmp(a+strlen(a),b);
a+strlen(a) place le pointeur au caractère de fin de chaine de a, et insere b à cet endroit.
il faut juste faire attention à ce que a contienne suffisamment de caractère vide pour inserer b.
j'ai vu ça quelque part sur ce forum :
#include <string.h> // pour strcat
#include <stdlib.h> // pour realloc
// dans le cas où s1 est un pointeur, il faut le redimensionner
s1 = realloc(s1,strlen(s1)+strlen(s2)+1);
strcat(s1,s2);
sinon tu peux utiliser ta méthode et faire un realloc pour qu'il n'y ait plus de pb.
#include <string.h> // pour strcat
#include <stdlib.h> // pour realloc
// dans le cas où s1 est un pointeur, il faut le redimensionner
s1 = realloc(s1,strlen(s1)+strlen(s2)+1);
strcat(s1,s2);
sinon tu peux utiliser ta méthode et faire un realloc pour qu'il n'y ait plus de pb.