Facile - Char ou string en C++

RRRico -  
blurk Messages postés 493 Date d'inscription   Statut Membre -
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

  1. fred
     
    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
    1. RRRico
       
      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
  2. blurk Messages postés 493 Date d'inscription   Statut Membre 160
     
    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
  3. BigSeb Messages postés 614 Date d'inscription   Statut Contributeur Dernière intervention   12
     
    Salut,
    Regarde l'aide sur strcmp( )
    Cette fonction permet de concatener deux chaines entre elle.

    -°-_-°-_-°-_-°-_-°-_-°-
    On the road again !!!!!!!
    0
    1. fred
       
      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
  4. blurk Messages postés 493 Date d'inscription   Statut Membre 160
     
    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