在矢量使用中找不到致命错误

时间:2015-12-27 06:44:35

标签: c++ string vector

我一直在尝试将两个数字作为字符串读取,将它们转换为int向量,然后将它们添加到我在学校的实验室中。我运行了我的代码来查找此错误:

  

Debug Assertion失败!

     

程序:C:\ windows \ SYSTEM32 \ MSVCP140D.dll文件:c:\ program files   (x86)\ microsoft visual studio 14.0 \ _vc \ include \ xstring   行:1681

     

表达式:向量下标超出范围

     

有关程序如何导致断言的更多信息   失败,请参阅关于断言的Visual C ++文档。

     

(按“重试”调试应用程序)

我已尝试重试,但它打开了另一个对话框,说调试到达了一个断点,此时我无法继续调试。这是我感兴趣的代码(Microsoft Visual Studio编译器):

if [[ "$string" == *"$substring"* ]]; then
    return 1
fi
return 0

1 个答案:

答案 0 :(得分:1)

我相信这是你正在寻找的错误:

void add(vector<int> largeInt1, vector<int> largeInt2, vector<int> &finalInt)
{
    for (int i = 0; i < 13; i++)
    {
        finalInt[12 - i] = largeInt1[11 - i] + largeInt2[11 - i];
    }
}

请注意,largeInt1largeInt2的大小为12.但是当i达到12时,您获得-1索引

finalInt[0] = largeInt1[-1] + largeInt2[-1];