QString变量在使用QT Creator从键盘输入的双变量后跳过
QString variable input skipped after double variable entered from keyboard with Qt Creator
我正在尝试从键盘输入QStrings和Double/Floats,但是从键盘输入双变量后,程序将跳过下一个QString输入。有什么问题?
我的程序:
#include <QCoreApplication>
#include <QTextStream>
QTextStream cout(stdout);
QTextStream cin(stdin);
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString name, supplier;
float price;
char answer;
cout << "Enter product name: ";
cout.flush();
name = cin.readLine();
cout << "Enter product price: ";
cout.flush();
cin >> price;
cout << "Enter product supplier: ";
cout.flush();
supplier = cin.readLine();
cout << "Is the supplier the manufacturer? (Y/N): ";
cout.flush();
cin >> answer;
cout << name << "-" << price << "-" << supplier << "-" << answer <<endl;
return a.exec();
}
,如果我以QSTRING输入价格,我可以使该程序可以工作,然后将其转换为双重,但感觉有些多余?
我输入双变量后为什么会跳过供应商输入?
cin >> price;
之后您需要另一个cin.readLine();
,因为阅读float直到行结束之前才读取:
[...]
cout << "Enter product price: ";
cout.flush();
cin >> price;
cin.readLine();
[...]
相关文章:
- 如果用户输入无效,如何使用字符串变量-C++重复输入命令
- 堆栈中大小变量输入错误 (C++)
- 如何使用用户输入变量制作二维数组?
- 一个变量的输入值也会保存到另一个变量中
- 如何在循环之外重新输入变量
- 我的 c++ 程序似乎没有发现字符串和我拥有但输入使用 getline 的变量之间的比较
- 使用单个变量对字符输入进行计数
- 如何在C++中从标准输入中获取变量输入
- 用户无法为第二个变量输入。C++
- C 错误:从命令行输入更改为变量输入
- 基于变量输入的泛型类方法计算
- 为什么我不能继续使用 std::cin 向同一变量输入其他值?
- 如何使用同一变量输入字母和数字?(C )
- C++:为什么为"int"变量输入"char"会导致递归变得疯狂?
- C++ 用户为整数变量输入非整数值
- 循环以丢弃来自stdin、Linux C++的虚假变量输入
- 如何通过cin为2个以上的变量输入流
- 为char类型变量输入多个字符的影响
- 接收从PHP到c++的各种变量输入
- 控制台应用程序-用户可以为c++中的整数变量输入的最高值是多少