cin.ignore 函数告诉 cin 对象跳过键盘缓冲区中的一个或多个字符。以下是它的一般形式:
括号中显示的参数是可选的。如果使用,则 n 是一个整数,c 是一个字符。它们告诉 cin 跳过 n 个字符,或直到遇到字符 c。
例如,以下语句会导致 cin 跳过接下来的 20 个字符,或者直到遇到换行符,以先到者为准:
如果没有使用参数,则只会跳过下一个字符。以下是其示例:
在学习 cin.get 时,对于cin>>和 cin.get 语句混合使用时发生的问题,可以通过在 cin >> 语句之后插入一个 cin.ignore 语句来避免,如下所示(这会导致 cin>> 遗留下来的换行符被绕过,强制 cin.get 等待用户输入另一个字符):
cout << "Enter a number: "; cin >> number; cin.ignore (); //跳过换行符 cout << "Enter a character: "; cin.get(ch); cout << "Thank You!" << endl;