英语轻松读发新版了,欢迎下载、更新

C语言学生求助,计算function导致程序崩溃

muench 发布于 2017年09月17日 | 更新于 2017年09月20日
无人欣赏。

本人小project 的代码,不知道该如何是好。

    double calculate_score(int matches[], int word_count, int argc){
    double sum=0;
    int i;
    for(i=0; i<argc-1; i++){
        sum += log(matches[i]+1.0)/log(2.0);
    }
    return sum/(log(8.5+ word_count)/log(2.0));
}

一旦运行到 log(matches[i]), 循环使用这个function四次后程序就崩溃了。 不管任何text都是一样。 紧急求助。初步怀疑是segmentation fault, 但是就是不知道如何更改!

共2条回复
董一凡 回复于 2017年09月17日

把代码贴全。你怎么调用这个函数的。

muench 回复于 2017年09月20日

1楼 @董一凡 谢谢您。后来经过debug发现的确是调用这个函数后在main里错误的使用memset导致内存出问题。因为为学校的作业,导致代码无法全部贴全,否则怕到时候交作业时学校那里检测到网上有记录然后出问题。最后非常感谢您的答复,谢谢您。

登录 或者 注册