我在网上找到了一个用于将字符串转换为浮点数/整数/双精度的代码示例,只是作为问题参考......
我想让用户输入一个数字作为字符串,将其转换为浮点数,测试其是否成功,如果输入为'Q'退出或如果不是'Q'字符则打印"无效输入"并返回更多输入。
如何进行转换失败测试?是ss.fail()吗?
我想让用户输入一个数字作为字符串,将其转换为浮点数,测试其是否成功,如果输入为'Q'退出或如果不是'Q'字符则打印"无效输入"并返回更多输入。
如何进行转换失败测试?是ss.fail()吗?
// using stringstream constructors.
#include <iostream>
#include <sstream>
using namespace std;
int main () {
int val;
stringstream ss (stringstream::in | stringstream::out);
ss << "120 42 377 6 5 2000";
/* Would I insert an
if(ss.fail())
{
// Deal with conversion error }
}
in here?! */
for (int n=0; n<6; n++)
{
ss >> val;
cout << val*2 << endl;
}
return 0;
}