社区
C++ 语言
帖子详情
void main() 和 int main()
sxh53
2011-04-28 11:06:35
为什么我们学的是void main()的呢?我是北邮的,用的人民邮电出版社的书
不过看网络上的都用 int main()
int main()
里面好像还可以设参数
而且还要return 0;
这个0 是什么意思?
我知道int 型函数要return
return 0是什么???
迷茫..
...全文
281
25
打赏
收藏
void main() 和 int main()
为什么我们学的是void main()的呢?我是北邮的,用的人民邮电出版社的书 不过看网络上的都用 int main() int main() 里面好像还可以设参数 而且还要return 0; 这个0 是什么意思? 我知道int 型函数要return return 0是什么??? 迷茫..
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
25 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
我的职业是看店铺的
2011-04-29
打赏
举报
回复
在 int main()中,return 0表示返回一个整形,
正常结束,而在一般函数体中 return 0 表示不正常的结束。
其实 return 0 的一层含义是主函数到此结束
要是按标准来的话, main 应该有返回值, 但是实际上很多时候这个返回值对我们来说没有意义,这才有了 void main()
yby4769250
2011-04-29
打赏
举报
回复
[Quote=引用 9 楼 sxh53 的回复:]
引用 7 楼 pathuang68 的回复:
引用 4 楼 sxh53 的回复:
用int main()
要比 void main() 好么? 比如什么节省算法的。
我觉得int main()挺酷的 就是不会用
里面的参数是什么意思??
去翻翻最基本的书,上面都会有详细的说明。
楼主是不是学习非常好的那种人(考试成绩很好)?俺有一个清华计算机毕业的小弟,说他们班有……
[/Quote]
学校都是这么安排教学计划的啊,你学的数据结构应该也是C++语言版的,和你学习C++没有冲突啊,相反可以让你更深入的学习C++。学一个学期让你入门就行了(我们是开两个学期的C++课),入了门后就是自己学,大学的大多专业课都是这样的,老师是不会像高中那样,按照课本从头到尾完全教会你的,都是自学,自学是培养你的学习能力和自主能力
zhang46791
2011-04-29
打赏
举报
回复
俺就知道可以这样写,但具体的没去研究。参考各位的!!!嘿嘿
pywepe
2011-04-29
打赏
举报
回复
当你的程序运行于父进程创建的子进程时,这个int返回值意义重大
manmount
2011-04-29
打赏
举报
回复
[Quote=引用 20 楼 zhao4zhong1 的回复:]
计算机组成原理→DOS命令→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言(包括C++)、架构……
[/Quote]
这个路线图非常好。我给你简化一下:计算机概论->dos系统->汇编->C
shihaobin
2011-04-29
打赏
举报
回复
一般的都要求时int main(),这比较正式一点,有些软件如果写作void main()时,运行时显示错误
xunxun
2011-04-29
打赏
举报
回复
你如果做GUI编程,几乎没有差别。如果是通过命令解释器装载的(cmd or shell),返回值表示的是否是安全的退出程序,如果安全退出,寄存器会有一系列的恢复动作。(如果不恢复,不是一定会出现问题,只会说有潜在的问题)。
我印象中现在C99标准要求编译器会在目标代码中最后自动加入 return 0,所以符合C99标准的编译器不加亦可,但建议加入。
赵4老师
2011-04-29
打赏
举报
回复
计算机组成原理→
DOS命令
→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言(包括C++)、架构……
meteorshmily
2011-04-29
打赏
举报
回复
int main(int argc, char** argv) 这种用法,只有在外部程序调用该程序时,才会使用argc,argv的变量。这些变量可能用来设置编程的一些参数及传递一些外部数据。
l523669057
2011-04-29
打赏
举报
回复
main()函数的返回值是用来告诉操作系统:你的程序的执行情况,是正常执行结束了,还是不正常执行结束。以向操作系统对你程序使用的资源如何处理提供参考
lihanbing
2011-04-29
打赏
举报
回复
[Quote=引用 6 楼 yyg990441 的回复:]
1.根据C/C++标准,main函数只有2种标准的形式:
int main(void); 和 int main(int argc, char** argv);
至于教材的作者使用void main(),说明他没有看过C/C++标准中关于main函数的说明。显然任何牛逼的人在C/C++方面都没有标准牛逼,所以你的教材写错了(其实教材里面写错的东西应该很多吧,不信你去看看你教材里指针和数组是怎么……
[/Quote]
mian是C++标准库默认的程序入口点,这个入口点可以使任何名字,只要在link的时候指定即可
oldmtn
2011-04-29
打赏
举报
回复
[Quote=引用 6 楼 yyg990441 的回复:]
1.根据C/C++标准,main函数只有2种标准的形式:
int main(void); 和 int main(int argc, char** argv);
至于教材的作者使用void main(),说明他没有看过C/C++标准中关于main函数的说明。显然任何牛逼的人在C/C++方面都没有标准牛逼,所以你的教材写错了(其实教材里面写错的东西应该很多吧,不信你去看看你教材里指针和数组是怎么……
[/Quote]
up~~~~~~~~~~~
ssbb94
2011-04-29
打赏
举报
回复
6楼的第一句是对的。但是c++标准只是规定了各种实现至少要保证的main函数形式,各种编译器可能有自己独特的main,但是标准中规定的两种形式在所有编译器都是确保正确的。
manmount
2011-04-29
打赏
举报
回复
void main(void) 是VC
ISO c 是 int main()
bpeldesigner
2011-04-29
打赏
举报
回复
建议用INT MAIN(),标准的,其实main函数里有三个参数,楼主可以去查阅一下,linux下用过地三个参数
sxh53
2011-04-28
打赏
举报
回复
[Quote=引用 7 楼 pathuang68 的回复:]
引用 4 楼 sxh53 的回复:
用int main()
要比 void main() 好么? 比如什么节省算法的。
我觉得int main()挺酷的 就是不会用
里面的参数是什么意思??
去翻翻最基本的书,上面都会有详细的说明。
楼主是不是学习非常好的那种人(考试成绩很好)?俺有一个清华计算机毕业的小弟,说他们班有一个女生读书相当之NX,但在做毕设的时候,xp怎么……
[/Quote]
我成绩一般般...现在大一...对C++很感兴趣,想深入研究..但是貌似我们学校给开了这学期C++之后就不学了,转成数据结构...所以我就自己往深琢磨...
我的专业是通信
深钻c++有必要么....我现在都很困惑.
shun_qizi_ran
2011-04-28
打赏
举报
回复
现在用的最多的还是int main()的,建议用这个的
pathuang68
2011-04-28
打赏
举报
回复
[Quote=引用 4 楼 sxh53 的回复:]
用int main()
要比 void main() 好么? 比如什么节省算法的。
我觉得int main()挺酷的 就是不会用
里面的参数是什么意思??
[/Quote]
去翻翻最基本的书,上面都会有详细的说明。
楼主是不是学习非常好的那种人(考试成绩很好)?俺有一个清华计算机毕业的小弟,说他们班有一个女生读书相当之NX,但在做毕设的时候,xp怎么关机都不知道...搞得他们都很愕然。
费玉清唱歌唱得很好,不过据说他连简谱都不识...
都是些神人...
yyg990441
2011-04-28
打赏
举报
回复
1.根据C/C++标准,main函数只有2种标准的形式:
int main(void); 和 int main(int argc, char** argv);
至于教材的作者使用void main(),说明他没有看过C/C++标准中关于main函数的说明。显然任何牛逼的人在C/C++方面都没有标准牛逼,所以你的教材写错了(其实教材里面写错的东西应该很多吧,不信你去看看你教材里指针和数组是怎么讲的?再看看C90/99标准里面是怎么讲的)
2.既然main函数要返回一个整数,你就可以随便返回一个整数,如-1,-2等等。一般认为程序正常结束,main函数返回0
3.给你个建议先不要死抠这些细节,先培养自己的编程能力。
pathuang68
2011-04-28
打赏
举报
回复
main函数有点特殊,你可以不再最后加return,尽管前面声明要求返回int。因为如果在不加return的情况下,编译器会缺省地为你加上return 0;
其他函数则必须返回和函数声明时要求返回的类型保持一致,否则不能通过编译。
加载更多回复(4)
void
main
()和
int
main
()
最近在论坛上看到有不少网友的程序中,
main
函数都写成
void
main
(),而不是
int
main
()。那么,到底哪个是正确的,或至少是推荐使用的呢?这篇文章本来是自己想写的,但有些概念不是很清楚,于是在网上搜索了一下,发现了moon网友的一篇非常好的文章,对很多模糊不清的概念都讲解的非常清楚,值得学习和借鉴,特转载过来,一起学习。全文如下:
main
函数的返回值大家注意了吗,也许
在C/C++中
int
main
()、
void
main
()、
int
main
(
void
)和
void
main
(
void
)之间有什么意义区别
一、主函数也是函数 首先我们要了解C/C++中函数的定义,因为
main
函数也是函数,与其他函数的区别只是主函数是程序的主线而已,程序从它开始也在其中结束。一个函数由函数名、其前的类型标识符、其后小括号里声明的类型的参数(叫形式参数或虚拟参数)和大括号里的函数主体构成。主函数
main
也不例外。 二、
main
前面用
int
还是
void
?
main
前面的是类型标识符,也就是类型名,其决定的是函数返回值的类型,
int
指有返回值且返回值为整形,
void
表示“空”即没有返回值。 很多函数是不需要返回值的,只作为语句执行就
void
main
与
int
main
的区别
http://users.aber.ac.uk/auj/
void
main
.cgi
C/C++编程笔记:“
int
main
()”和“
int
main
(
void
)”的区别?
考虑
main
()的以下两个定义:
int
main
() { /* */ return 0; } 和
int
main
(
void
) { /* */ return 0; } 有什么不同? 在C ++中,没有区别,两者相同。 两种定义都可以在C中使用,但是从技术上讲,使用
void
的第二种定义在技术上被认为是更好的,因为它明确指出
main
只能在没有任何参数的情况下调用。 在C语言中,如果函数签名未指定任何参数,则意味着可以使用任何数量的参数...
浅谈
main
(),
int
main
(),
void
main
(),
int
main
(
void
)四者之间的区别
1,
main
():相当于
int
main
() 2,
int
main
():
int
是
main
() 函数的返回类型。这表明
main
()函数返回的值是整数且授受任何数量的参数。 3,
void
main
():
void
为空类型。这表明
main
函数无返回值且授受任何数量的参数。 4,
int
main
(
void
):
main
不接受任何参数且返回的值是整数。 另外请注意:
main
()为老式的...
C++ 语言
65,198
社区成员
250,522
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章