【发布时间】:2018-05-07 15:02:29
【问题描述】:
#include <stdio.h>
main()
{
int num[9], i = 0, count = 0;
while (i<10)
{
scanf("%d", &num[i]);
if (num[i] % 2 == 0)
{
count++;
}
i++;
}
printf("we have %d double numbers\n", count);
}
运行时检查失败 #2 - 变量周围的堆栈已损坏
我该怎么办?
【问题讨论】:
-
num[9]超出数组 -
函数必须有返回类型,特别是主函数!!
-
那么我需要做什么你能写信给我吗?
-
while (i<10)-->while (i<9) -
每当你看到这个:运行时检查失败 #2 - 变量周围的堆栈已损坏 那么这意味着大多数时候某些数组索引超出了范围,这实际上是这里的情况(见下面的答案)。但是,当您在调试模式下编译时,此错误消息特定于 Microsoft 编译器。当数组索引超出范围时,不保证会发生
标签: c arrays loops for-loop while-loop