打印
[ZLG-ARM]

easyarm2131实验问题——关于return

[复制链接]
1268|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hero_0810|  楼主 | 2008-1-18 15:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在看EASYARM2131开发板时,见配套的《深入浅出ARM7……》实验指导书中的主程序总是 "int main(void)"开始,
最后"return 0;"结束。

我想问,既然主程序不会被调用,且本来没有返回值,为什么硬要给它加个
返回值"0"呢?

不仅在这里,就是刚开始学习C时,教科书上也是这样,这样做有什么好处,
而如果直接"void main(void)"有什么不好的?

谢谢各位老师!

                                                     小刘
                                             email:hero_0810@163.com
                                                QQ:382339388

相关帖子

沙发
zlgarm| | 2008-1-18 15:30 | 只看该作者

hero_0810 您好!

main函数在c99标准规定中只能被声明为如下两种形式:
一.int main(void).
二.int main(int argc,char* argv[]).
main函数的默认返回值为0。

这样做的原因:
一.程序运行期间系统为程序分配资源.
二.程序结束后系统需要对资源进行回收.
三.程序的结束必须是一个可以检测的结果.
                                              By zlgarm_syg

使用特权

评论回复
板凳
hero_0810|  楼主 | 2008-1-19 08:10 | 只看该作者

谢谢!

非常感谢

使用特权

评论回复
地板
biao.l| | 2008-1-21 16:14 | 只看该作者

void main(void)有的编译器报错

使用特权

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

本版积分规则

19

主题

46

帖子

0

粉丝