Problema com cin quando os espaços são inseridos, usando a classe string
Eu tenho o seguinte código:
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;
}
Eu notei que se eu colocasse um espaço na minha entrada para o nome, isso não me daria a chance de inserir o nome, e ele veria a entrada após o espaço como idade. Peço desculpas se isso é um erro de novato, o que provavelmente é. Anteriormente, eu programava o Java e decidi mudar para o C ++, pois ele atende melhor às minhas necessidades. Eu provavelmente também formato meu código estranho para seus padrões, por favor, corrija-o se você quiser.
Eu também notei outro erro, algo que eu nunca tive problemas com Java. Eu não consigo descobrir como impedir que ele feche instantaneamente quando terminar o processamento. Ouvi dizer que você pode usar "system. (" Pause "); mas também me disseram para não usá-lo. Estou realmente confuso sobre o que usar. Ouvi usar getchar () ;, mas não parece fazer nada.
Qualquer ajuda seria muito apreciada, como eu sou um novato completo quando se trata de C + +.