gbxxr1 2016-06-11 08:33 采纳率: 100%
浏览 2530
已采纳

关于Stack corrupt的问题!实在想不出来怎么改

写最小生成树的克鲁斯算法时出现的,存放已经升序排列好的的边的数组E老是出现Stack corrupted
void MinSpantree(Edge E[], int n)
{
int i, j, k, a, b;
int vest[maxsize + 1];
for (i = 0; i<n; i++)
vest[i] = i;
k = 0; j = 0;
while (k<n)
{
a = E[j].u; b = E[j].v;
if (vest[a] != vest[b])
{
printf("(%d,%d):%d\n", E[j].u, E[j].v, E[j].w);
k++;
for (i = 0; i<n; i++)
if (vest[i] == vest[E[j].v])
vest[i] = vest[E[j].u];
}
j++;
}
}

  • 写回答

2条回答 默认 最新

  • 小灸舞 2016-06-11 09:24
    关注

    越界造成的。
    自己单步调试看看下标有没有问题,越界访问或者越界写入导致的问题。
    或者用printf打印一下所有的下标,看看哪个地方有异常。
    单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏