Пожалуйста, кто-то может объяснить мне, что случилось, почему я получаю эту ошибку:ошибка: управление может достичь конца Непустой функции
error: control may reach end of non-void function
Я пытаюсь сделать функцию linearsearch()
принимая ключ и таблицу возвращающейся индекс элемента, если он найден. Это сбивает с толку; Я начинаю и принимаю онлайн-курс cs50; Раньше у меня никогда не было этой ошибки.
#include <stdio.h>
#include <string.h>
#include <cs50.h>
int linearsearch(int key, int array[]);
int main(int argc , string argv[])
{
int key = 0;
int table[]={2,4,5,1,3};
printf("%i is found in index %i\n",key,linearsearch(1,table));
}
int linearsearch(int key, int array[])
{
for(int i = 0;i<5;i++){
if(array[i] == key)
{
return i;
}
else{
return -1;
}
}
}
Там не применяется погрешность не возвращает значения из не-пустоты функции здесь. Там * может * быть (некорректным) компилятором * warning *. Очевидная ошибка в вашем коде в другом месте. – EOF
Возможно, ошибка относится к возврату значения из 'main' (а компилятор находится в режиме pre-C99). Сообщение об ошибке должно содержать связанный с ним номер строки. –