Xcode – Advertencia: la statement implícita de función no es válida en C99

Obtención de una advertencia: la statement implícita de la función ‘Fibonacci’ no es válida en C99. ¿Qué pasa?

#include  int main(int argc, const char * argv[]) { int input; printf("Please give me a number : "); scanf("%d", &input); getchar(); printf("The fibonacci number of %d is : %d", input, Fibonacci(input)); //!!! }/* main */ int Fibonacci(int number) { if(number<=1){ return number; }else{ int F = 0; int VV = 0; int V = 1; for (int I=2; I<=getal; I++) { F = VV+V; VV = V; V = F; } return F; } }/*Fibonacci*/ 

La función debe declararse antes de que se llame. Esto podría hacerse de varias maneras:

  • Escriba el prototipo en un encabezado
    Use esto si la función se puede llamar desde varios archivos fuente. Solo escribe tu prototipo
    int Fibonacci(int number);
    hacia abajo en un archivo .h (por ejemplo, myfunctions.h ) y luego #include "myfunctions.h" en el código C.

  • Mueva la función antes de que se la llame la primera vez
    Esto significa, anote la función
    int Fibonacci(int number){..}
    antes de su función main()

  • Declare explícitamente la función antes de llamarla por primera vez
    Esta es la combinación de los sabores anteriores: escriba el prototipo de la función en el archivo C antes de su función main()

Como nota adicional: si la función int Fibonacci(int number) solo se utilizará en el archivo donde se implementa, se declarará static , de modo que solo sea visible en esa unidad de traducción.

El comstackdor quiere saber la función antes de poder usarla

solo declare la función antes de llamarla

 #include  int Fibonacci(int number); //now the compiler knows, what the signature looks like. this is all it needs for now int main(int argc, const char * argv[]) { int input; printf("Please give me a number : "); scanf("%d", &input); getchar(); printf("The fibonacci number of %d is : %d", input, Fibonacci(input)); //!!! }/* main */ int Fibonacci(int number) { //… 

Tengo la misma advertencia (es que mi aplicación no puede comstackr). Cuando agrego la C function en Objective-C's .m file , pero olvidé declararlo en el archivo .h .

debe llamar a la función correctamente; like- Fibonacci: entrada