main() in C, C++, Java, C#

c, c#, c++, java, program-entry-point

Solution

It's a user-defined function that is necessary for a program to execute. When you go to run your program in the compiled language, the `main` function is what is executed. For instance, in Java, if you have a function of the signature `public static void main(String ... args)` in a class then that class can be executed, as the JVM will execute the contents of that `main` method.

Example in Java:

public class Test {
  public static void main(String ... args) { 
    System.out.println("Hello World");
  }
}

...

javac Test.java

...

java Test

Results in "Hello World" being printed to the console.

Problem

Is main() (or Main()) in C, C++, Java or C#, a user-defined function or a built-in function?

Original source