我一直在尝试将两个数字作为字符串读取,将它们转换为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
答案 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];
}
}
请注意,largeInt1
和largeInt2
的大小为12.但是当i
达到12时,您获得-1索引
finalInt[0] = largeInt1[-1] + largeInt2[-1];