Facile - Char ou string en C++

Fermé
RRRico - 28 avril 2004 à 17:55
blurk Messages postés 486 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 15 mars 2009 - 29 avril 2004 à 12:27
Salut,
Je dévelope sur Borland C++ Builder 6 et je suis completement nouveau.
Je connais
gets(chaine);
sscanf(chaine, %c, nom_chaine);

Mais je voudrais inserer la valeur rentree au clavier dans une autre chaine, ou une string, mais je ne connais pas bien la difference entre les deux.

genre : char ("blablabla %c encore blablabla", nom_chaine);

mais ca ca marche pas.

Merci d'avance.

4 réponses

le type "char " permet de definir soit un caractére unique (il est alors signé ou non), soit une chaine de carctéres respectivement tel que :

char un_caractere_unique;
char une_chaine_de_10_caracteres[10]; ou
char *une_chaine_de_longueur_variable; //il s'agit en faiut d'un pointeur sur le flot représentant la chiane en question

on peut des choses du genre:

char chaine[25] ;
printf(...);
gets(chaine);

le type "string" a proprement parlé n'existe pas dans C++ Builder.

@+
3
Ok, tu réponds a "string ou char ?". Merci, y'a dc pas besoin de se casser la tete sur les strings.
Maintenant, t'aurais pas une idée pour inserer le contenu de gets(chain1) dans une autre (chaine2) ?
Ca m'arrangerait drolement !

Merci (re)
0
blurk Messages postés 486 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 15 mars 2009 160
29 avril 2004 à 10:20
AnsiString !
consultez l'aide de votre builder, le type AnsiString est hyper souple, polymorphe, et il se débrouille tout seul pour allouer
sa mémoire.
en plus on peut faire :

AnsiString toto;
toto="voila";
toto+=" du texte";

tout ce qui est vrai avec string est vrai avec AnsiString

a+
0
BigSeb Messages postés 614 Date d'inscription vendredi 16 avril 2004 Statut Contributeur Dernière intervention 22 juillet 2005 12
29 avril 2004 à 10:26
Salut,
Regarde l'aide sur strcmp( )
Cette fonction permet de concatener deux chaines entre elle.

-°-_-°-_-°-_-°-_-°-_-°-
On the road again !!!!!!!
0
il s'agit plutot de la fonction strconcat() pour concatener les chaines de caracteres.


eg: strconcat(ch1,ch2) où le resultat est : ch1 = ch1+ch2 ;
@+
0
blurk Messages postés 486 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 15 mars 2009 160
29 avril 2004 à 12:27
ben alors les gars ? RTFM ! :-)

puisque c'est du (char *) allons-y:

strcpy(cible,source) ==> copier source dans cible

strcat(cible,source) ==> ajouter source dans cible

strcmp(chaine1, chaine2) ==> comparer chaine1 et chaine2
0 si identique sinon <0 si chaine1<chaine2 et >0 cas inverse

strlen(chaine) très utile pour la longueur de la chaine

voir STRING.H dans Borland c'est documenté en Anglais,
je sais, c'est dur, mais c'est mieux foutu que visual machin.

a+ tous
0