BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #16472同步于 2008/11/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

[合集] 关于这个void main

Xer
2008/11/22镜像同步0 回复
☆─────────────────────────────────────☆ wks (cloverprince) 于 (Thu Jun 5 11:23:22 2008) 提到: 我最早编C语言程序的时候是用 main() { printf("hello world"); exit(0); } 后来用 main() { printf("hello world"); return 0; } 然后就是看了很多网上的文章的说教,包括Bjarne叔叔的个人主页,以后,开始坚持使用: int main() { printf("hello world"); return 0; } 而且见人就鼓吹int main()加return 0; 但是国内外很多教材都在使用void main() {} 包括Linux内核源代码,还有MSDN里的例子 而Kernighan大牛的C programming language书里,第一个例子是 main() { printf("hello world"); } 然后我就真的心里发毛了。连C programming language都用main(),那么,那个int main()到底是怎么回事?是谁定的标准? 可以理解,在Unix中,这个返回值会返回给操作系统进行其它处理,比如交给shell判断程序执行是否成功。 还有java语言里的 public static void main(String[] args) 这被SUN规定成标准的用法。那么Java程序在Unix里面运行,就没有返回值了吗? ☆─────────────────────────────────────☆ NWN2 (Neverwinter Nights 2) 于 (Thu Jun 5 11:29:51 2008) 提到: C有两个规范 ANSI C main() { // return 0; 可选 } int main() { return 0; } void main() { } ============== ISO C int main() { return 0; } void main() { } =============== 至于C++的int main(),那是C++的ISO规范,C++也只有ISO规范 ☆─────────────────────────────────────☆ ttplayer (红颜弹指老 刹那芳华) 于 (Thu Jun 5 11:39:03 2008) 提到: K&R C 函数返回值不声明默认为int你就不会发毛了 ☆─────────────────────────────────────☆ Xer (SL小分队|小x|benogy) 于 (Thu Jun 5 11:45:47 2008) 提到: int main()是C++标准,C89没有规定main函数返回值,如果不写的话默认返回int,C99才规定写个int,TCPL出的比C89早...至于Linux代码,没看过。。。 每个程序运行应该都有返回值表示状态,这个应该是由操作系统决定的,不是说程序员没写返回值就没返回值,可以写个小程序测试一下。 写个void就不应该了,还不如写个int字母更少,不写也比写个void强。。。。。。 【 在 wks (cloverprince) 的大作中提到: 】 : 我最早编C语言程序的时候是用 : main() : { : ................... ☆─────────────────────────────────────☆ hellfire01 (新人) 于 (Thu Jun 5 13:48:16 2008) 提到: 【 在 Xer 的大作中提到: 】 : int main()是C++标准,C89没有规定main函数返回值,如果不写的话默认返回int,C99才规定写个int,TCPL出的比C89早...至于Linux代码,没看过。。。 : 每个程序运行应该都有返回值表示状态,这个应该是由操作系统决定的,不是说程序员没写返回值就没返回值,可以写个小程序测试一下。 : 写个void就不应该了,还不如写个int字母更少,不写也比写个void强。。。。。。 =.= 还有return xxx. ☆─────────────────────────────────────☆ PtwCJ (鲜的每日C|头像不是我,我是长毛贼~~) 于 (Thu Jun 5 17:06:46 2008) 提到: 真追求细节的话,C应该是 int main(void)或者int main(int argc, char *argv[]) 因为C的参数列表空的话不会默认为没有参数,所以要显式的告诉编译器 唉,这些东西也不知道有没有用 ☆─────────────────────────────────────☆ UnitTest (TDD) 于 (Thu Jun 5 17:58:04 2008) 提到: 【 在 PtwCJ 的大作中提到: 】 : 唉,这些东西也不知道有没有用 为什么你回帖里面总喜欢带上"唉"这个词呢,我觉得就应该是“哈哈”之类的才对 ☆─────────────────────────────────────☆ PtwCJ (鲜的每日C|头像不是我,我是长毛贼~~) 于 (Thu Jun 5 18:09:53 2008) 提到: 瓦擦~~我都没有注意到阿 牛人太多,压力比较大,呵呵。前阵子更郁闷,调整了几天,没想到又不行了 谢谢提醒阿,我继续调整 【 在 UnitTest 的大作中提到: 】 : 为什么你回帖里面总喜欢带上"唉"这个词呢,我觉得就应该是“哈哈”之类的才对 ☆─────────────────────────────────────☆ loveSEC (bupt|popkart|小土鸡炖蘑菇) 于 (Thu Jun 5 19:44:28 2008) 提到: 【 在 wks 的大作中提到: 】 : 我最早编C语言程序的时候是用 : main() : { : ................... 恩 受教了~囧~ ☆─────────────────────────────────────☆ SturdyEagle (计忆邮心|眉鹰LoveIBM) 于 (Thu Jun 5 20:07:51 2008) 提到: 喜欢这句话 哈哈 【 在 UnitTest 的大作中提到: 】 : 为什么你回帖里面总喜欢带上"唉"这个词呢,我觉得就应该是“哈哈”之类的才对 ☆─────────────────────────────────────☆ mayao11 (卡马克的fans) 于 (Thu Jun 5 21:36:32 2008) 提到: 标准是必要的,但是不用太追究…… 用void main()死不了 ☆─────────────────────────────────────☆ ttfish (望乡) 于 (Thu Jun 5 22:20:49 2008) 提到: 还是习惯用int main ☆─────────────────────────────────────☆ BoyFisher (男孩之垂釣者|小龍快跑|八卦幫之火龍封印) 于 (Thu Jun 5 23:19:01 2008) 提到: 这个对 我一般都用 int main(void) 【 在 PtwCJ (鲜的每日C|头像不是我,我是长毛贼~~) 的大作中提到: 】 : 真追求细节的话,C应该是 : int main(void)或者int main(int argc, char *argv[]) : 因为C的参数列表空的话不会默认为没有参数,所以要显式的告诉编译器 : ................... ☆─────────────────────────────────────☆ zhbconan (理小职业杀|SL小分队|苦力甲) 于 (Thu Jun 5 23:26:05 2008) 提到: dev c++里貌似void main()编译通不过~~~ 【 在 mayao11 的大作中提到: 】 : 标准是必要的,但是不用太追究…… : 用void main()死不了 ☆─────────────────────────────────────☆ Goldfather (Mike|godfather) 于 (Thu Jun 5 23:26:49 2008) 提到: 不是ms,是肯定编译不过 【 在 zhbconan (理小职业杀|SL小分队|苦力甲) 的大作中提到: 】 : dev c++里貌似void main()编译通不过~~~ ☆─────────────────────────────────────☆ yegle (一阁|博学之人|奇峰怪石,秀山丽水) 于 (Thu Jun 5 23:28:33 2008) 提到: dev c++调用的是gcc,不支持这个形式的程序 同样的还有需要在程序最后加上一个空行,不然也会报错 【 在 zhbconan (理小职业杀|SL小分队|苦力甲) 的大作中提到: 】 : dev c++里貌似void main()编译通不过~~~ ☆─────────────────────────────────────☆ BoyFisher (男孩之垂釣者|小龍快跑|八卦幫之火龍封印) 于 (Thu Jun 5 23:29:11 2008) 提到: 应该是警告 而不是错误吧 【 在 yegle (一阁|博学之人|奇峰怪石,秀山丽水) 的大作中提到: 】 : dev c++调用的是gcc,不支持这个形式的程序 : 同样的还有需要在程序最后加上一个空行,不然也会报错 ☆─────────────────────────────────────☆ Goldfather (Mike|godfather) 于 (Thu Jun 5 23:31:04 2008) 提到: 这个dev c在保存的时候会自动加的。。。 【 在 yegle (一阁|博学之人|奇峰怪石,秀山丽水) 的大作中提到: 】 : dev c++调用的是gcc,不支持这个形式的程序 : 同样的还有需要在程序最后加上一个空行,不然也会报错 ☆─────────────────────────────────────☆ yegle (一阁|博学之人|奇峰怪石,秀山丽水) 于 (Thu Jun 5 23:31:38 2008) 提到: 记不清了,现在用gcc 4.2.4没这个提示信息了 【 在 BoyFisher (男孩之垂釣者|小龍快跑|八卦幫之火龍封印) 的大作中提到: 】 : 应该是警告 : 而不是错误吧 ☆─────────────────────────────────────☆ SDI (SDI) 于 (Thu Jun 5 23:33:03 2008) 提到: 推荐打开-Wall 【 在 yegle (一阁|博学之人|奇峰怪石,秀山丽水) 的大作中提到: 】 : 记不清了,现在用gcc 4.2.4没这个提示信息了 ☆─────────────────────────────────────☆ SDI (SDI) 于 (Thu Jun 5 23:34:56 2008) 提到: 我猜声明这个只对编译时有用,运行时这些参数还是被弄出来的,只不过不能显式引用。 【 在 BoyFisher (男孩之垂釣者|小龍快跑|八卦幫之火龍封印) 的大作中提到: 】 : 这个对 : 我一般都用 : int main(void) : ...................
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。