打印

为什么要写int main()

[复制链接]
2992|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
张文XXX|  楼主 | 2012-3-16 22:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以前学的都是void main()为什么非要写int main()?
沙发
logokfu| | 2012-3-16 23:07 | 只看该作者
标准C就是这么规定了, int main(),程序里return 0,表示正常进入主函数。keil编译时会自动加入return 0,所以不用手动写了。void main()其实是不合法的,只不过有的编译器支持这样写。

使用特权

评论回复
板凳
john_lee| | 2012-3-16 23:08 | 只看该作者
C新标准定义了main()必须是int类型。

使用特权

评论回复
地板
张文XXX|  楼主 | 2012-3-17 00:38 | 只看该作者
哦  ,谢谢前辈指点,以前学单片机都是void main(),突然提示我main的返回值应该是Int的   有点迷茫

使用特权

评论回复
5
梅花望青竹| | 2012-3-17 15:04 | 只看该作者
一般int main()为标准的函数原型,最后写个return 0;这样符合规定!

使用特权

评论回复
6
李富贵| | 2012-3-17 20:56 | 只看该作者
标准的C语言里面main就是int型的,返回0表示正常执行完毕,返回非零值表示执行错误,不同的值表示不同的错误代码。单片机没有OS,main函数返回值没有意义,所以要写成void型的。

使用特权

评论回复
7
拿起书本| | 2012-3-17 21:07 | 只看该作者
这是一种标准的规定,我是学C的,有时候不同的编译器可以使用void main()或者int main()但是既然人家有标准,那么你最好用int main(),最后return 0;就可以了。
我用的CB IDE就不允许使用void main()。

使用特权

评论回复
8
张文XXX|  楼主 | 2012-3-18 12:05 | 只看该作者
这样啊!懂了。 6# 李富贵

使用特权

评论回复
9
dfsa| | 2012-3-18 16:55 | 只看该作者
LS的大侠已经解释的够清楚了,普及C常识

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

16

帖子

1

粉丝