V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mingl0280
V2EX  ›  C

今天看到个奇葩回复

  •  
  •   mingl0280 · 2017-09-03 05:26:14 +08:00 · 5331 次点击
    这是一个创建于 2630 天前的主题,其中的信息可能已经有所发展或是发生改变。

    “额…… C98 是要求 void main 的,但是里头可以写 int main。主要是一个是 C98 标准,一个是 C99 标准。不是人家 vc6.0 的锅。你要是用 tc1.0 版本的话,人家还不支持 int main 呢。只会用微软的 vc 环境不叫学会了编程。谢谢!”

    问题是我说的是 GCC 不支持 void main

    然后为了抽这个家伙的脸我还专门跑去装了个 TC1.0,233333

    18 条回复    2017-09-04 14:33:25 +08:00
    NoAnyLove
        1
    NoAnyLove  
       2017-09-03 07:56:58 +08:00
    没看懂在说什么。不过谁说 gcc 不支持 void main 的?
    karia
        2
    karia  
       2017-09-03 08:00:59 +08:00
    这种问题有啥好问的,自己读标准去

    还有`GCC`是一大套工具的总称,请不要再把`GCC`这个缩合字当做 C 或 C++编译器的代名词
    visionsmile
        3
    visionsmile  
       2017-09-03 08:22:33 +08:00
    C89 标准里也从未说过支持 void main,我考证过这个,详情看我的这篇文章 ![main 原型考证及程序终止行为]( http://imzlp.me/posts/15272/)
    nmgwddj
        4
    nmgwddj  
       2017-09-03 11:18:57 +08:00
    浪费时间吧?
    seawing
        5
    seawing  
       2017-09-03 11:25:53 +08:00 via Android
    @karia “ Originally named the GNU C Compiler ”,真是不懂这种也要装个逼是什么心态
    airqj
        6
    airqj  
       2017-09-03 11:31:18 +08:00
    不知道这里有没有人上 CU
    以前有个叫薛非的砖家很喜欢这些
    另外,有 C98 吗.....
    visionsmile
        7
    visionsmile  
       2017-09-03 11:39:33 +08:00
    @airqj #6 你不说我还没看到 LZ 打成了 C98....
    目前 C 的标准(ISO/IEE 9899)有 C89/C99/C11
    C++的(ISO/IEC 14882)有 C++98/03/11/14/17
    goodspb
        8
    goodspb  
       2017-09-03 12:02:52 +08:00
    @seawing er...现在 GCC 是 GNU Compiler Collection,早不是 GNU C Compiler 了。
    zts1993
        9
    zts1993  
       2017-09-03 12:39:13 +08:00
    @airqj #6 品悟 C
    seawing
        10
    seawing  
       2017-09-03 12:48:06 +08:00 via Android
    @goodspb 我只是强调下这个很重要么,还非要来挑下刺
    mdzz
        11
    mdzz  
       2017-09-03 14:02:52 +08:00
    @visionsmile
    7. exit 这个部分里面的 “ Next ” 和 “ Finally ” 重复了
    vonvin
        12
    vonvin  
       2017-09-03 15:40:44 +08:00 via iPhone
    这种牛角尖的问题我才不管,int 妹不行用 void 妹,反正 c 语言就一个妹。
    visionsmile
        13
    visionsmile  
       2017-09-03 17:32:03 +08:00
    @mdzz #11 OK,已经移除了重复的~
    carlonelong
        14
    carlonelong  
       2017-09-03 19:27:12 +08:00
    有意义吗...
    lrxiao
        15
    lrxiao  
       2017-09-03 19:54:33 +08:00
    ...你截个标准不就得了

    void main 可能只有 ANSI C 89 吧

    说实在没看懂在说啥
    baixiangcpp
        16
    baixiangcpp  
       2017-09-03 21:07:24 +08:00
    @karia GCC 的原名就是 GNU C Compiler,后来才变成了 GNU Compiler Collection,不过还是指编译器。
    timothyqiu
        17
    timothyqiu  
       2017-09-03 21:30:32 +08:00
    翻翻标准文档就知道标准答案了,这种事情没什么好争的(摊手
    RLib
        18
    RLib  
       2017-09-04 14:33:25 +08:00
    了解这个标准还不如去了解这个 int 用去干了什么, 了解这个 int 用去干什么还不如...
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5364 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 07:30 · PVG 15:30 · LAX 23:30 · JFK 02:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.