Deklarieren Sie eine leere Funktion in C?

Ich lerne C und studiere Funktionen. Ich habe also gelesen, dass ich beim Implementieren meiner eigenen Funktion diese vor main () deklarieren muss. Wenn ich die Deklaration verpasse, erhält der Compiler eine Fehlermeldung.
Als ich dieses Beispiel studierte (findet heraus, ob die Zahl eine Primzahl ist)

#include <stdio.h>

void prime();               //function prototype(declaration) 

int main()
{ 
   int num,i,flag; 

   num = input();            // No argument is passed to input()

   for(i=2,flag=i; i<=num/2; ++i,flag=i)
   {
      flag = i;

      if(num%i==0)
      { 
         printf("%d is not prime\n",num); 
         ++flag; 
         break; 
      }
   }

  if(flag==i)
     printf("%d is prime\n",num);

  return 0;

}     

int input()  /* Integer value is returned from input() to calling function */
{ 
    int n;
    printf("\nEnter positive enter to check: "); 
    scanf("%d",&n); 
    return n;
 }

Mir ist aufgefallen, dass eine Funktion prime () deklariert ist, aber in der Hauptsache wird eine Funktion input () aufgerufen und auch die Funktion input () wird unten implementiert. Ok, ich dachte, es wäre ein Fehler und ich ändere den Namen von Prime zu Input.
jedoch Wenn ich die Deklaration lösche und keine dort ablege, wird das Programm fehlerfrei kompiliert und läuft reibungslos. (Ich kompiliere und starte es in Ubuntu)

Meine Frage ist also, ist es notwendig, eine leere Funktion ohne Argumente zu deklarieren?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage