Я пытаюсь написать рекурсивную функцию в программировании C, но компилятор продолжает предупреждать меня: управление может достигнуть конца функции, не являющейся void. Я не знаю, где я могу ошибаться.
int foo(int* ptr){
int flag = 0;
--(*ptr);
if((*ptr)!=0) flag = 1;
if(flag == 0) return 1;
else foo(ptr);
}
int main()
{
int count=10;
int* ptr = &count;
int n = foo(ptr);
printf("%d", n);
return 0;
}
Спасибо.