#include<iostream>
#include<fstream>
#include<stdio.h>
using namespace std;
void add()
{
char name[21];
ofstream k("friends.frn", ios::app);
cout << "Enter your name : ";
cin.getline(name, 21);
cin.clear();
fflush(stdin);
k << name;
k << '\n';
}
int main()
{
int ch;
while (1)
{
cout << "1. Add"; << endl;
cout << "2. Exit"; << endl;
cout << "Enter your choice : ";
cin >> ch;
cin.clear();
fflush(stdin);
if (ch == 1) add();
if (ch == 2) break;
}
return 0;
}
答案 0 :(得分:1)
clear()
本身不是标准函数。它仅作为几种标准类型的成员函数存在于标准库中。所以cin.clear()
的行为与其他班级的行为不同。 clear()方法。实现clear()
的每个类都以对该类型合理的方式执行。例如,std::string::clear()
将导致字符串为空。
有关标准clear()
成员方法的列表,请参阅cppreference.com上的here。