c++ - 如何在 C++ 中检查输入是整数、字符串还是 float

标签 c++ c++14

我想知道的是,如果我要求用户输入一些东西,如果输入是整数、字符串或浮点值,我将如何输出。我想要一些方法来检查 C++14 中输入的数据类型。

例如。

如果输入是“Hello world”

输出应该是:“输入是字符串”

如果输入是“134”

输出应该是:“输入是整数”

如果输入是“133.23”

输出应该是:“输入是 float ”

最佳答案

读取字符串。

<string> ,标准库提供了一组函数,用于从字符串或 wstring 中的字符表示中提取数值。

使用 x=stoi(s,p) .检查p - 如果读取了整个字符串 - 它是整数。

x=stof(s,p) 做同样的事情或 x=stod(s,p) , x=stold(s,p)检查 float/double/long double。

如果一切都失败了 - 它是字符串。

关于c++ - 如何在 C++ 中检查输入是整数、字符串还是 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45941240/

相关文章:

c++ - 处理空格字符作为输入

c++ - `ncurses` 函数 `wgetstr` 正在修改我的变量

c++ - QueryDisplayConfig - 缺少正确的文档

c++ - 是否允许在 constexpr 函数中进行函数指针比较?

c++ - 将特化定义为另一个类的实例化

c++11 - 使用与 typedef - 是否存在微妙的、鲜为人知的区别?

c++ - Makefile 第一个规则目标

c++ - 使用 zip 迭代器调用 boost::compute::sort() 会产生构建错误

c++ - wxWidgets 运行时错误(版本不匹配)

c++11 - VS2015 的链式 std::bind 编译错误