gpt4 book ai didi

C++如何检查输入浮点变量的有效输入

转载 作者:行者123 更新时间:2023-11-28 03:54:08 25 4
gpt4 key购买 nike

我正在编写一个充当计算器的程序;根据用户输入的字符执行一定的操作。该程序的结构似乎工作正常,但我希望能够检查错误输入。接收到float变量后,有没有办法检查它是否不包含除数字和小数以外的任何字符?我试过 isdigit,这是:

if (!(cin >> x)) {
cout << "You did not enter a correct number!" << endl;
return;
}

但似乎没有任何效果。

这是我正在使用的一个简单操作函数的示例:

void Add(){
float x = 0, y = 0, z = 0;
cout << "Please enter two numbers you wish "
<< "to add separated by a white space:" << endl;
cin >> x >> y;
z = x+y;
cout << x << " + " << y << " = " << z << "." << endl;
return;
}

最佳答案

您测试流的状态:

float x, y;
if (std::cin >> x >> y) {
// input extraction succeeded
}
else {
// input extraction failed
}

如果这对您不起作用,那么您需要发布不起作用的确切代码。

关于C++如何检查输入浮点变量的有效输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4271315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com