我不知道如何制作一个程序,该程序在按下' q'字符。 我这样做:
#include <iostream>
#include <limits>
using namespace std;
int main()
{
double arg;
char c;
while (c!= 'q' && c != 'Q')
{
cout << "Please enter a number x (q = program quit) : " << endl;
cin >> arg;
if (cin.fail())
{
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
}
return 0;
}
程序不会退出&#39; q&#39;或者&#39; Q&#39;。它只是一直在询问&#34;请输入一个数字x(q =程序退出):&#34;。我该怎么做?感谢
答案 0 :(得分:0)
您尚未在代码中阅读“c”。
答案 1 :(得分:0)
@ user1627167谢谢。有用。代码:
#include <iostream>
#include <limits>
#include <sstream>
using namespace std;
int main()
{
double arg;
string s;
while (s != "q" && s != "Q")
{
cout << "Please enter a number x (q = program quit) : " << endl;
cin >> s;
istringstream ss(s);
ss >> arg;
if (cin.fail())
{
cin.clear();
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
}
return 0;
}