我是MFC的新手,现在我想将指数数字“4.246E + 3”转换为4246.
输入是字符串和输出我想在int中获取它。
如果我们有任何方式(API)在MFC,C ++中获取它,请告诉我。
由于 MAP
答案 0 :(得分:2)
以下代码可以很好地解决您的问题......
#include<sstream>
string str = "4.246e+3";
stringstream ss;
double number;
ss<<str;
ss>>number;
答案 1 :(得分:-1)
您可以使用标准库函数,它允许str
采用科学记数法。
int stoi (const string& str, size_t* idx = 0, int base = 10);
如果您提供idx
并且它返回nullptr
,则str
是纯数字,如果不是,则返回str
中第一个无效字符的地址。
最好尽可能使用标准C ++库函数而不是MFC来帮助将来移植MFC。