- En C++, les chaines de caractères sont des tableaux de caractères dont le dernier élément est le caractère nul. On les déclares avec un pointeur de caractère
char *uneChaine= "hello";
- Par conséquent, leur manipulation est complexe. On ne peut pas comparer 2 chaines avec nom1 == nom2 ou affecter la valeur de l’une dans l’autre avec nom1 = nom2 puisqu’on manipule des adresses
- La STL introduit une classe String qui facilite la gestion des chaines de caractères
#include <string>
std::string uneChaine("Hello");
# include <string > // pour les chaines
# include <iostream > // pour cin et cout
using namespace std;
string s = "Dupond"; // initialisation
string c = s + " et Dupont"; //+ : concaténation
cout << c << endl ; // affiche : Dupond et Dupont
c.length (); // vaut 16
char t = c [3]; // vaut ’o’ (le tableau commence a 0)
string s2 = s.substr(2,3) //extrait une sous chaine
cout << s2 << endl ; // affiche pon
string a;
cin >> a; // lit un mot au clavier
getline (cin , a); // lit une ligne
cout << a << endl ; // affiche a