我正在尝试将字符串的各个内容转换为整数。我需要从字符串中取出每个字符并将其转换为整数以添加到另一个。这不是使用 C++11。有没有简单的方法来做到这一点?
问问题
67 次
3 回答
2
于 2013-10-07T17:50:58.000 回答
1
“我需要从字符串中取出每个字符并将其转换为整数以添加到另一个”
如果您想计算存储在std::string
对象中的数字总和,您可以执行以下操作:
std::string myNum("567632");
int sum = 0;
for (size_t i = 0; i < myNum.size(); ++i)
sum += (myNum[i] - '0');
std::cout << sum;
输出29
(即 5 + 6 + 7 + 6 + 3 + 2)
于 2013-10-07T17:49:17.587 回答
0
怎么样std::accumulate
?
#include<string>
#include<algorithm>
//...
std::string myNum("123456789");
std::cout<<accumulate( myNum.begin(), myNum.end(), 0,
[](int sum,const char& x){return sum+=x-'0'; });
于 2013-10-07T18:02:09.343 回答