读书人

请来帮忙找错!

发布时间: 2012-05-01 12:48:58 作者: rapoo

请高手进来帮忙找错!!!
int create(SSTable * ST){
int i,n,k;
printf("\n请输入表的长度:");
scanf("%d",&n);
ST=(SSTable *)realloc(ST,(ST->length+MAX_SIZE)*sizeof(SSTable));
if (!ST->elem) return 0;
for(k=1;k<=ST->length;k++)
{
printf("\n请输入第%d个元素的值:",k);
scanf("%d",&(ST->elem[k].key));
}
}

以上一段代码运行到输入长度的时候就关闭程序了,不知道是哪里出了问题。
是在Dev-C++运行的。
在Win-TC中运行就没有问题。
请各位高手帮忙解决一下,谢谢!

[解决办法]
把完整的代码贴上来,这样看不出问题
[解决办法]
多半是因为你的输入输出流坏掉了, 你需要重置一下输入输出流 在第3行

你可以用 debug 在第3行 断一下, 看有没有读入值。
[解决办法]
debug的时候你看看n有被赋值吗
[解决办法]
顶顶顶顶顶顶顶顶顶顶顶顶

读书人网 >软件架构设计

热点推荐