为什么我会收到错误说“未使用的参数n”?

时间:2016-12-16 20:57:48

标签: c cs50 linear-search

我一直试图解决这个cs50 pset3。我写了这个线性搜索算法,当我尝试运行它时,我得到错误说“未使用的参数n”,“未使用的参数值”。任何人都可以告诉我为什么我会收到此错误。我试过多次重新安排我的代码。 谢谢,

bool linear_search(int value, int values[], int n)
{
    if (n < 1)  //if n is negative it has to return false.
    {
        return false;
    }

    bool result = false;

    for (int i = 0; i < n; i++)
    {
        if (values[i] == value)
        {
            result = true;
        }
        return result;
    }
    return false;    //it returns false if the value is not in values.
}

1 个答案:

答案 0 :(得分:1)

正如您在评论中所述,导致错误的n是另一个函数的参数

void sort(int values[], int n)

这是您必须在该HW中实现的另一个功能。你可以暂时使用n,如n = n + 1;在该函数中,直到您实现它。

您将此作为错误而不是警告的原因是-Werror标记您使用clang(请参阅Makefile)。这告诉clang将警告视为错误,这样你就可以在执行程序之前强制纠正它们,并可能提交作业。