2015-08-03 5 views
0

Я создаю простую программу на C++. Чтобы пользователь вводил строку как строку. Моя программа работает нормально, но когда я вводим имя с пробелом, пропустите следующий ввод здесь, это мой код.C++ не принимает все входы

#include <iostream> 

using namespace std; // So the program can see cout and endl 

class Etradehouse 
{ 
private: 
    string cnic,name,fname, dob,qua, des,join_date , number , address; 
    int sal;  
public: 
    void getData(){ 
    cout<<"\nPlease enter National identity Card number : \n"; 
    cin >>cnic ; 
    cout<<"Please enter name: \n"; 
    cin >> name; 
    cout<<"Please enter father name : \n"; 
    cin >> fname; 
    cout<<"Please enter Date of birth : \n"; 
    cin >> dob; 
    cout<<"Please enter qualification : \n"; 
    cin >> qua; 
    cout<<"Please enter designation : \n"; 
    cin >> des; 
    } 
}; // Class ends here 

int main() 
{ 
Etradehouse obj; 
    obj.getData(); 

} 
+1

возможно дубликат http://stackoverflow.com/questions/5838711/c-cin-input-with-spaces –

ответ

1

Это не пропуск, он просто перестает читать после столкновения с пространством.

Использование std::getline(std::cin, name);

+0

Приму ваши анс в течение 5 мин. ... –

Смежные вопросы