I am actually working C language on Ubuntu 18.04. I don't use any IDE.
#include <stdio.h>
void main()
{
    message();
    printf("\nCry, and you stop the monotomy!\n");
}
void message()
{
    printf("\nSmile, and the worldsmiles with you...");
}
When I run this it returns error message as follows.
msg.c: In function ‘main’:
msg.c:5:2: warning: implicit declaration of function ‘message’ [-Wimplicit-function-declaration]
  message();
  ^~~~~~~
msg.c: At top level:
msg.c:8:6: warning: conflicting types for ‘message’
 void message()
      ^~~~~~~
msg.c:5:2: note: previous implicit declaration of ‘message’ was here
  message();
  ^~~~~~~
When I put the message function above main() then it shows no error. Why is it? Can't we put functions after main()? What is implicit declaration here?
 
     
     
     
    