小编Ank*_*rma的帖子

如果用户不小心给出了错误的数据类型,cin 如何工作?

我是 C++ 的新手。我正在试验cin.

我想知道cin如果用户提供不正确的数据类型,将如何进行输入。所以我检查了 Stack Overflow 并得到了这个答案

当你读取一个整数并给它输入 1.5 时,它看到的是整数 1,它在句点处停止,因为它不是整数的一部分。“.5”仍在输入中。这就是你只得到整数部分的原因,这也是它似乎没有第二次等待输入的原因。

为了解决这个问题,您可以读取浮点数而不是整数,以便读取整个值,或者您可以检查读取整数后行中是否还有其他内容。

所以我尝试了它。

#include <iostream>

int main()
{
    std::cout << "Enter 4 numbers: " <<
    std::endl;
    int v1 = 0, v3 = 0;
    float v2 = 0, v4 = 0;
    std::cin >> v1 >> v2 >> v3 >> v4;
    std::cout  << "-> " << v1 << " " << v2 << " " 
    << v3 << " " << v4 << std::endl;    
    return 0; …
Run Code Online (Sandbox Code Playgroud)

c++ user-input cin

3
推荐指数
1
解决办法
99
查看次数

标签 统计

c++ ×1

cin ×1

user-input ×1