我需要将带有数字的字符串转换为long变量以执行一些数学运算。
现在我用std::stol
来做到这一点,但是当我插入一个值太大的方法无法处理它,它停止与argument out of range
。
所以我的问题是:是否有一种方法来转换长(或长)类型的字符串没有内存不足?将C++字符串转换为long而没有out_of_range异常
这是我使用的代码:
#include <iostream>
int main() {
std::string value = "95666426875";
long long converted_value = std::stoul(value.c_str());
//Some math calc here
std::cout << converted_value << std::endl;
return 0;
}
做你想做的事,当输入值过大,以适应什么? –