问答详情
源自:1-1 初始C语言

c89,c99,c11到底怎么定义

int main(int argc,char *argv[])
{    return 0;}
int main([void])
{    return 0;}
void main()
{    [return;]}
有人说第一个是标准的,表示main函数接受参数,第二个,表示main无参数,第三个不标准的,连C语言之父没有说过这样表示。。。也这些好混乱。。。。。在网上昏了。。
求高手解释。


提问者:_一个人_0 2015-06-04 16:01

个回答

  • onemoo
    2015-06-05 09:12:02
    已采纳

    你写的基本上没错。

    //不过第二个应该是
    int main(void)
    //而第一个也可以写成
    int main(int argc, char **argv)  // argv参数用数组或是指针形式是一样的

    main函数的返回值肯定是int型,所以返回void是错的。

    你记住这两种main声明形式就好了

  • 伊兮尘昔
    2015-06-04 18:24:29

    第一个相对标准点,不过也可以不写参数

    第二个也可以这么写,也是正确的

    但是最后一个嘛,告诉你完全是错误的

    http://www.imooc.com/video/6207  这节课程中有详细解释