Я новичок в C, я работаю над чужим кодом и пытаюсь избавиться от предупреждения, которое выглядит примерно так:
warning: function expects to return value: myfunc
myfunc объявлен так (Iверю, что по умолчанию это int)
myfunc(int id, int age) {
...
return;
}
Поэтому я пытаюсь поместить void позади myfunc, чтобы это выглядело так1012 * идентификатор переименован: myfunc
current : function() returning void
previous: function() returning int : "students.c", line 233
Но когда я перехожу на строку 233 student.c, это только первое место, где я на самом деле вызываю функцию.Почему это происходит?
Я знаю, что могу изменить return
на return 0;
, а затем определить myfunc как int.Но когда эта функция вызывается, она ни к чему не привязана, она просто выполняется как myfunc(current_id, age);
(например, не int i = myfunc(...
).
В такой ситуации лучше не использовать void?Можно ли использовать return;
в функции void
?
Спасибо!