65,212
社区成员
发帖
与我相关
我的任务
分享#include<iostream>
using namespace std;
int main()
{
int i;
cout << "请输入一个数字:"<< endl;
cin >> i;
while(!cin)
{
cout << "输入错误!" << endl;
cout << cin << endl;
cin.clear();
cout << cin << endl;
cin >> i;
}
return 0;
}
cout << cin << endl;
你的目的是要输出cin对象吗?#include<iostream>
using namespace std;
int main()
{
int i;
cout << "请输入一个数字:"<< endl;
cin >> hex >> i;
while (!cin)
{
cout << "输入错误!" << endl;
cout << cin << endl;
cin.clear();
cout << cin << endl;
cin >> i;
}
return 0;
}[/quote]
没用啊,你将输入设置hex有意义吗?[/quote]
#include<iostream>
using namespace std;
int main()
{
int i;
cout << "请输入一个数字:"<< endl;
cin >> hex >> i;
cout << hex << i << endl;
#if 0
while (!cin)
{
cout << "输入错误!" << endl;
cout << cin << endl;
cin.clear();
cout << cin << endl;
cin >> i;
}
#endif
cin.get();
return 0;
}
自己看结果。
你的循环是在第一次输入失败的时候进入,这个逻辑似乎不通。如果你不把输入改成hex,只会读取0x...的0而已。#include<iostream>
using namespace std;
int main()
{
int i;
cout << "请输入一个数字:"<< endl;
cin >> hex >> i;
while (!cin)
{
cout << "输入错误!" << endl;
cout << cin << endl;
cin.clear();
cout << cin << endl;
cin >> i;
}
return 0;
}[/quote]
没用啊,你将输入设置hex有意义吗?#include<iostream>
using namespace std;
int main()
{
int i;
cout << "请输入一个数字:"<< endl;
cin >> hex >> i;
while (!cin)
{
cout << "输入错误!" << endl;
cout << cin << endl;
cin.clear();
cout << cin << endl;
cin >> i;
}
return 0;
}