> 
> **Possible Duplicate:**  
> 
> [Why is the type of the main function in C and c++ left to the user to define?](https://stackoverflow.com/questions/5296163/why-is-the-type-of-the-main-function-in-c-and-c-left-to-the-user-to-define) 
> 
> 
> 

I've come across many C's main function style and syntax of writing but I'm not actually getting what this syntax mean can anybody give brief on each syntax?
why void? why int? why void,int as parameter?

```
void main() {

}

int main() {

}

int main(void) {

}

void main(void) {

}

int main(int) {

}

int main(int argc, char* argv[]) {

}

```