I think that sets the address of main to NULL, so it segfaults as soon as `_start` jumps to `main`. It's known for being one of the smallest compilable C programs.
EDIT: Your original post contained
int main=0;EDIT: Your original post contained
int main=0; const int main = 0xC3;
...which is just a return. Or you can get fancy and make it exit successfully by clearing eax first: const int main = 0xC3C031; main=0;