呵呵,main函数是可以被调用的
具体例子我还是喜欢用本论坛最著名的变态knocker写的一段
int i=-1,f,n,c;
main(){i==-1&&(scanf("%d",&n),f=0,c='Z',i++),printf("%*c\n",2*i,i?c--:0,printf("%*c",n-i+1,c--)),(f=i==n-1?1:f)?main(i--):main(i++);}
从这里面我们可以知道,main默认的返回值其实是int类型,具体返回值不同是代表着程序是异常结束还是正常关闭