use*_*993 4 c++ input function
我从C++中的一个函数调用一个函数,该函数的getline(cin,name)名称是一个字符串.第一次循环,程序不等待输入.它将在所有其他通过循环.有什么想法吗?
void getName (string& name)
{
int nameLen;
do{
cout << "Enter the last Name of the resident." << endl << endl
<< "There should not be any spaces and no more than 15"
<< " characters in the name." << endl;
getline(cin,name);
cout << endl;
nameLen = name.length();// set len to number of characters input
cout << "last" << name << endl;
}
while (nameLen < LastNameLength);
return;
}
Run Code Online (Sandbox Code Playgroud)
确保自上次从cin读取内容后没有遗留下来,例如:
在程序的早期阶段:
int number;
cin >> number;
Run Code Online (Sandbox Code Playgroud)
你给的输入:
5
Run Code Online (Sandbox Code Playgroud)
后来在该计划中:
getline(cin,name);
Run Code Online (Sandbox Code Playgroud)
并且getline似乎没有被调用,而是从上次输入时收集了换行符,因为当你使用cin >>它时会留下新行.