gpt4 book ai didi

c++ - 如果用户在没有输入的情况下点击 Enter,则无法找到产生错误的方法

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

好吧,我必须制作一个程序来计算每月的数据账单。我唯一坚持的是,如果用户在没有输入任何内容的情况下单击输入,我无法让它给出错误。我尝试使用 get line() 但我似乎无法让它读取字符。另外,我怎么会产生错误,因为我认为我做错了什么。

我也总是找不到匹配的函数来调用“getline”

#include <iostream>
#include <string>
#include <iomanip>

using namespace std;

int main()
{
// State the different plans
cout << "A - $29.99 per month with 5000 megabytes.\n";
cout << " $0.05 per additional megabyte, but only\n";
cout << " $0.03 per additional megabyte if 50% or\n";
cout << " more of the data was used on weekends\n";
cout << "B - $39.99 per month with 7500 megabytes.\n";
cout << " $0.01 per additional megabyte\n";
cout << "C - $49.99 per month for unlimited megabytes.\n";

// Ask what plan the customer bought
cout << "Enter A, B, or C to chose the plan the user has purchased: ";
char input;

getline(cin, input);

// Capitalize the input
input = toupper(input);


// Ignore anything after the first letter
cin.ignore(100, '\n');

最佳答案

使用 std::getline() 的最简单方法是将其第二个参数设为 std::string

std::string input;

getline(cin, input);

if (input.size() == 0)
{
// Nothing was typed in before hitting Enter.
}

这比使用operator>>简单多了,然后还要处理ignore(),还有其他令人头疼的事情等等……

关于c++ - 如果用户在没有输入的情况下点击 Enter,则无法找到产生错误的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39987935/

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