C++ 如何将C+中以字符串形式给出的数字中的所有数字相加+;?

C++ 如何将C+中以字符串形式给出的数字中的所有数字相加+;?,c++,string,C++,String,我有一个数字作为字符串。例如: str_num = "12345" 所以 但是 我希望结果是字符串中所有数字的总和。在这种情况下,即: str_num[0] + str_num[1] + str_num[2] + str_num[3] + str_num[4] = 15 我该怎么做 str_num[0] - '0' + str_num[1] - '0' + ... 是单向的,即从当前总数中减去5批'0'。'0'的减法在C和C++中是惯用的,因为这两个标准都坚持任何数字编码都是以连续顺序和连

我有一个数字作为字符串。例如:

str_num = "12345"
所以

但是

我希望结果是字符串中所有数字的总和。在这种情况下,即:

str_num[0] + str_num[1] + str_num[2] + str_num[3] + str_num[4] = 15
我该怎么做

str_num[0] - '0' + str_num[1] - '0' + ...

是单向的,即从当前总数中减去5批
'0'
'0'
的减法在C和C++中是惯用的,因为这两个标准都坚持任何数字编码都是以连续顺序和连续块进行的。

有效。谢谢:-)明白了。谢谢:-)但是不要把这个习惯用法用于字母字符,它不是严格意义上的可移植性。我对字母字符没有任何知识。我在哪里可以学到这方面的知识?我读过Kernighan和Ritchie的《C编程语言》。是的,它很旧,但它很短,写得很好。好吧,伙计!谢谢你的帮助。
str_num[0] + str_num[1] + str_num[2] + str_num[3] + str_num[4] = 15
str_num[0] - '0' + str_num[1] - '0' + ...