C++ et manipulation de string

Résolu
Bonjour,

dans le programme ci dessous, comment faire pour que une variable de type string accepte une phrase avec des espaces comme :

le lundi il fait froid?

le pgm :

#include <iostream>
#include <string>

using namespace std;

int main()
{
string S1="Hello World - tout va bien";
cout << "S1 = " << S1 << endl;
system("pause");

string S2;

cout << "entrer un phrase avec des espaces " << endl;
cin >> S2;

cout << "vous avez entre : " << endl;
cout << "S2 = " << S2 << endl; // ici, on aura que le premier string de la phrase!!! help!
system("pause");

}

merci!
Configuration: Windows Vista
Firefox 2.0.0.17

3 réponses

  1. le type c'est String je crois avec une majuscule
    0
    1. Non, ça c'est en java ^^.
      0
    2. @pyschopathea ok je croyais que c'était pareil...
      ben je c'est pas ;)
      0
  2. Essaie
    std::cin.getline( nom_chaine, nb_caracteres, caractere_fin )
    Je ne suis plus trop sûr de la syntaxe mais il me semble que c'est quelque chose comme ça.
    0
    1. Merci ta sol marche!

      entre temps, pour les autres, j'ai trouvé une autre alternative :

      #include <iostream>
      #include <string>

      using namespace std;

      int main()
      {
      string S1="Hello World - tout va bien";
      cout << "S1 = " << S1 << endl;
      system("pause");

      string S2;
      char ST[255];

      cout << "entrer un phrase avec des espaces " << endl;
      cin.get(ST,255);

      S2=ST;
      cout << "vous avez entre : " << endl;
      cout << "S2 = " << S2 << endl;
      system("pause");

      }
      0
      1. Parfait, mets le statut en résolu stp.
        0