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 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效