Fussionner deux variables...

cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007 - 17 juil. 2003 à 01:21
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 - 17 juil. 2003 à 19:14
Question stupide je c mais comment on fait pour fussionner 2 variable de texte ou ajouter quelque chose a la fin de celle ci .

ca fait une heure que je cherche et je trouve pas ..
merci...

17 réponses

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
17 juil. 2003 à 01:31
salut,
la fonction strcat(char * chaine1, char * chaine2) copie la chaine2 a la fin de la chaine1.

Bien evidement, il faut que les 2 chaines soit terminées par un caractere '\0' (NULL).
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 01:39
ok ..... mais ya pas une otre methode ... en vb on fesais

resultat = unevar&lotrevar&"du texte si on veux"
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
17 juil. 2003 à 01:58
Salut,
Si tu as que 2 chaines, strcat est parfait.
Tu as aussi sprintf qui fonctionne comme printf, faut que la 1er argument est un char * qui contient ta chaine de caractere finale. L'avantage de sprintf c'est que tu peux mettre du texte perso, des chaines de carateres, des entiers, en 1 seule ligne.
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
17 juil. 2003 à 11:43
Tu peux utiliser l'opérateur + mais seulement si tes chaines de caractères sont des objets (style std::string) et non des tableaux de caractères. En C++ seulement évidemment ...

Kaid - kaid.fr.st
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 16:45
Ok merci ...
@+ Arkko
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 17:17
j'essai de faire un strcat mais il me fait un access violation a chaque fois !!!
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
17 juil. 2003 à 17:43
Enfin il faut qu'il y a de la place dans la chaine de destination.

char[] strUn="Test 1";
char[] strDeux="Test 2";

// Ce que tu fais certainement, ce qui est faux:
strcat(strUn, strDeux);

// Ce qu'il faut faire:
char[] strFinale=new char [strlen(strUn) + strlen(strDeux) + 1];
strcpy(strFinale, strUn);
strcat(strFinale, strDeux);


Kaid - kaid.fr.st
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 17:46
moi je faisait ...

CHAR* texte = "Yo les jeunes";
strcat(texte,"\n");
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
17 juil. 2003 à 17:52
Ca fait un caractère de trop pour le buffer, ca explose logiquement.

Kaid - kaid.fr.st
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 17:54
Lol merci . ..!!!! il faudrais un string comme vb :)
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
17 juil. 2003 à 17:55
Mets toi au C++ alors, c'est possible avec les objets.

Kaid - kaid.fr.st
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 17:57
lol je croyais que je fais du cpp lol ..
peux tu m'expliquer cmt faire ... lol je c je suis fatiquant mais je debute lol !
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
17 juil. 2003 à 18:20
Si tu ne maitrises pas encore les chaines en c, c'est peut-être sauter les étapes, mais bon.

#include 
#include <string>

void testString()
{
std::string strTest="test 1":
std::string strConcat=strTest + "test 2";

cout << strConcat.c_str();
}



Kaid - kaid.fr.st
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 18:21
MERCI TOUT FONCTIONNE lol ...
0
cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004
17 juil. 2003 à 18:53
Cependant, je te conseille de bien comprendre Le fonctionnement et la manipulation des chaines de caracteres c (tableau de char) plutot que les string(mm si bcp plus simple).
Bye,Xentor609
0
cs_Arkko Messages postés 192 Date d'inscription mercredi 26 décembre 2001 Statut Membre Dernière intervention 31 janvier 2007
17 juil. 2003 à 19:09
Ok mais avec un new char[ ...] j'imagine qui faut faire delete quand on a pu besoin de la chaine fussionner ?
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
17 juil. 2003 à 19:14
Oui.

Kaid - kaid.fr.st
0
Rejoignez-nous