【问题标题】:C++ getline not working with doubleC ++ getline不能与double一起使用
【发布时间】:2016-10-17 13:44:39
【问题描述】:

由于某种原因,getline 不能与 double 一起使用,它会给我一条消息,说“getline 没有重载函数“getline”的实例与参数列表参数类型匹配:(std::istream, double)”如果我改变字符串的双打它可以工作,所以我不确定问题是什么,如果有人可以提供帮助,将不胜感激

【问题讨论】:

标签: c++ double getline


【解决方案1】:

那是因为std::getline 用于读取字符串。而且只有字符串。如果要获取浮点值,请将其作为字符串读取,并将 convert 读取为浮点值。或者使用输入运算符>>

【讨论】:

    【解决方案2】:

    使用

    cin >> athOneTime;
    

    提取double。如果您想跳过该行的其余部分,请使用

    cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    

    【讨论】:

      【解决方案3】:

      出现问题是因为getline() 只读取字符串。要读取双精度,您必须使用cin

      【讨论】:

      • 你的答案比其他答案有什么价值?
      • Eu dei uma resposta mais simples para entender
      猜你喜欢
      • 2013-01-24
      • 2012-08-21
      • 1970-01-01
      • 1970-01-01
      • 2014-01-11
      • 1970-01-01
      • 2017-08-18
      • 2013-01-16
      • 2018-11-29
      相关资源
      最近更新 更多