首页 > 后端开发 > C++ > 如何在 C 中使用'cin”可靠地输入数字?

如何在 C 中使用'cin”可靠地输入数字?

Linda Hamilton
发布: 2024-12-16 16:22:10
原创
290 人浏览过

How to Reliably Input Numbers Using `cin` in C  ?

使用 cin 排除数字输入问题

在 C 中,cin 函数可用于读取用户输入,但在尝试验证输入是否有效时会出现问题数字。当输入非数字字符时会出现此问题,可能会为下一次迭代留下部分输入。

一种解决方案是利用 std::getline 和 std::string 读取整行输入。随后,使用 std::stringstream 来解析输入并提取双精度值。循环继续,直到整行可以成功转换为双精度,消除剩余输入的问题。

#include <string>
#include <sstream>

int main()
{
    std::string line;
    double d;
    while (std::getline(std::cin, line))
    {
        std::stringstream ss(line);
        if (ss >> d)
        {
            if (ss.eof())
            {   // Success
                break;
            }
        }
        std::cout << "Error!" << std::endl;
    }
    std::cout << "Finally: " << d << std::endl;
}
登录后复制

以上是如何在 C 中使用'cin”可靠地输入数字?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板