【发布时间】:2019-03-06 19:05:26
【问题描述】:
for(unsigned long i=add1.length()-1;i>=0;i--){
int presum = stoi(to_string(add1.at(i))) + stoi(to_string(add2.at(i))) + curcarry;
我让这段代码循环遍历字符串 (add1) 的字符,从最后一个开始一直到第一个。然后它使用索引获取当前字符并将其转换为整数,将其添加到另一个保证相等长度的字符串的当前字符(add2)。
我得到一个字符串 out_of_range 错误,在查看调试菜单时,我看到虽然我的字符串都是应有的,长度只有 3,但 i 值以某种方式结束为 18446744073709551615 .
附件是 i 值的图像,旁边是长度明显不相关的字符串。怎么回事?
调试值:
【问题讨论】: