gpt4 book ai didi

c++ - 如何检查双变量开头的小数?

转载 作者:行者123 更新时间:2023-11-28 04:46:58 28 4
gpt4 key购买 nike

我的目标是检查 double 变量的第一部分是否为小数。

double value;

if (isdigit(cin.peek())) {
cin >> value;
if (/*value starts with '.'*/) {
cout << "decimal" << endl;
}
}

1 不会打印“十进制”。

1.0 不会打印“十进制”。

0.1 不会打印“十进制”。

.1 将打印“十进制”。

我该如何检查?

最佳答案

在将输入读取到 value 之前,使用 if 语句中的 peek() 函数,但将结果与“.”进行比较而不是检查它是否是数字。在将输入读入 double 后为时已晚,因为届时数字是否以小数点开头并不重要。

double value;

if(cin.peek() == '.')
{
//it starts with a decimal point
}
cin >> value;
//do stuff with value

关于c++ - 如何检查双变量开头的小数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49091300/

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