Problem z cin przy wprowadzaniu spacji przy użyciu klasy string
Mam następujący kod:
main.cpp#include <iostream>
#include <string>
using namespace std;
string name;
string age;
int main() {
cout <<"Name: ";
cin >> name;
cout << endl;
cout <<"Age: ";
cin >> age;
cout << endl;
cout << "Your name is " << name << ", and you are " << age << " years old." << endl;
cout << "Press enter to close this application" << endl;
getchar();
return 0;
}
Zauważyłem, że jeśli wstawię spację na wejściu dla nazwy, nie da mi to szansy na wpisanie nazwy i wyświetli wpis po przestrzeni jako wiek. Przepraszam, jeśli jest to błąd początkującego, który prawdopodobnie tak jest. Wcześniej zaprogramowałem Java i zdecydowałem, że chcę przełączyć się na C ++, ponieważ lepiej pasuje do moich potrzeb. Prawdopodobnie formatuję swój kod dziwnie do twoich standardów, popraw go, jeśli chcesz.
Zauważyłem również inny błąd, z którym nigdy nie miałem żadnych problemów w Javie. Nie wiem, jak zapobiec natychmiastowemu zamknięciu go po zakończeniu przetwarzania. Słyszałem, że możesz użyć "systemu. (" Pauza "); ale powiedziano mi również, żeby go nie używać. Naprawdę jestem zdezorientowany tym, czego użyć. Słyszałem, że użyłem getchar () ;, ale nie robi nic.
Każda pomoc byłaby bardzo mile widziana, ponieważ jestem kompletnym początkującym, jeśli chodzi o C ++.