我正在创建一个简单的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();
}
答案 0 :(得分:1)
它没有跳过,只是在遇到空格后才停止阅读。
使用std::getline(std::cin, name);