gpt4 book ai didi

c++ - 我怎样才能 cin 一个 unsigned long long 而没有错误?

转载 作者:行者123 更新时间:2023-11-28 07:34:05 25 4
gpt4 key购买 nike

好的,这是我的代码:

    cout << "What is your p value?" << endl;
unsigned long long p;
cin >> p;
cin.ignore();
cout << endl;

cout << "What is your q value?" << endl;
unsigned long long q;
cin >> q;
cin.ignore();
cout << endl;

我输入了第一个巨大的值——即 p——,即使使用这些 cin.ignore() 也会自动将某些内容放入 q。我在这里没有看到什么问题?如果您需要更多信息(如果您不明白),请告诉我。

[从评论中添加信息:输入值为92896134244099469431,超过了266。]

最佳答案

你说你输入了一个“巨大的值(value)”。如果该值超过 unsigned long long 的上限,则 cin >> p; 将失败。

快速实验表明,一旦发生这种情况,cin >> q; 不会执行任何操作,并且 q 中不会存储任何值。 p 的值可能是 18446744073709551615,或 264-1。

您需要检查每个输入操作是成功还是失败,并决定如何处理任何错误。

您还需要更新您的问题以准确指出您为程序提供的输入。

关于c++ - 我怎样才能 cin 一个 unsigned long long 而没有错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17076517/

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