运行时检查失败#2 - 变量周围的堆栈'myArray'已损坏.- 似乎无法弄清楚如何删除此错误
Run-Time Check Failure #2 - Stack around the variable 'myArray' was corrupted.- Cant seem to figure out how to remove this error
代码运行,但常量错误 - 运行时检查失败 #2 - 变量"myArray"周围的堆栈已损坏。似乎找不到任何可行的解决方案。非常感谢所有的帮助。
`# include <iostream>
# include <cstdlib>
using namespace std;
int main()
{
int swapHolder = -1;
int myArray[] = {44, 9, 237, 1, 5, 44, 534, 17, 21, 819};
for (int index = 0; index < 10; index++)
{
if (myArray[index] > myArray[index + 1])
{
swapHolder = myArray[index + 1];
myArray[index + 1] = myArray[index];
myArray[index] = swapHolder;
}
}
for (int index = 0; index < 10; index++)
{
cout << myArray[index] << ", ";
cout << endl;
}
}
在第一次 for 循环的最后一次运行中,当索引的值为 9 时,myArray[index + 1]
变得myArray[10]
但该数组的索引最大值为 9。因此,在这种情况下,您正在访问编译器未分配给程序的内存块。这就是您收到运行时错误的原因。请将您的第一个 for 循环替换为此循环
for(int index=0; index<9; index++)
相关文章:
- 当我尝试添加 2 个大字符串时,我无法弄清楚出了什么问题
- 弄清楚如何在C++中将整数读入 ASCII
- 写一个分数类,我无法弄清楚这些错误
- 分段错误(核心转储)但无法弄清楚
- N-queen问题:无法弄清楚为什么我的解决方案不起作用
- 为什么我的编译器无法弄清楚这种转换,它何时存在?
- 任何人都可以弄清楚这段代码如何显示运行错误?它打印无限时间 -1 以及正确答案
- 循环不继续无法弄清楚为什么
- 我一直试图弄清楚我在这个链表程序中做错了什么
- 无法弄清楚为什么没有调用重载运算符 []
- 无法弄清楚如何使用 c++ 中的链表按从 a 到 z 的顺序显示字母
- 我无法弄清楚"对Winmain@16错误的未定义引用"
- 谁能弄清楚为什么我的循环会失败?
- 试图弄清楚我需要做哪些更改才能使代码正常工作.使用Visual Studio
- C++需要弄清楚为什么这个 for 循环不起作用
- 使用指针和引用,无法弄清楚为什么DFS无限重复
- 弄清楚这段代码是怎么回事(递归下降案例研究)
- 我无法弄清楚我的代码未显示预期结果的问题
- 运行时检查失败#2 - 变量周围的堆栈'myArray'已损坏.- 似乎无法弄清楚如何删除此错误
- 无法弄清楚如何通过仅使用类的函数删除整个链表