社区
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是什么???
迷茫..
...全文
276
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
也是一个函数; #include<stdio.h>
void
main
(){ } 如上代码所示,
void
main
() 这样定义只是说明
main
函数没有返回值。 #include<stdio.h>
int
main
(
void
){ return 0; } 如上代码所示,
int
main
(
void
)和
int
main
()是一样的(括号里没有东西就相当于
void
) 说明
main
函数有一个
int
类型的返回值。
int
main
()是C语言的规范,要求
main
函...
void
main
与
int
main
之间的区别?
void
main
与
int
main
之间的区别是什么?”这是一个常见的问题。我们来探讨一下这个问题,并深入研究一些有关
main
()函数不同版本的更多的东西。C与C++在
main
()函数方面的标准有所不同,所以我们要分开讨论。 对于C语言: 在C89标准中,
main
() 的形式是可以接受的,当然使用如下的C99标准更明智,因为在这个标准中只有如下格式才能被接受:
int
main
( v
void
main
(),
int
main
() 和
int
main
(
void
)的区别
1、区别是
main
()函数是否有返回值。2、
void
定义的函数没有返回值,
int
定义的函数返回整型值。3、
void
,字面意思是“无类型”,常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明,有注释和限制程序的作用。 4.标准的
main
函数格式为:
int
main
(
int
argc, char *argv[]);即返回值为整型,带两个参数,argc为命令行参数的个数,argv为指...
void
main
与
int
main
到底有什么区别
main
是一切(控制台)程序都必须有的一个入口函数
main
函数是否有返回值在绝大多数情况下无关紧要 因为
main
函数体内的代码一旦运行完毕 这个程序就结束了 另外 lz显然没有理解程序开发中封装的思想 输出函数在主函数里,是以浮点型数据输出的,这个返回值是在屏幕上显示的。而
int
main
() 主函数返回的值是0,即 return 0; 这个返回值不是显示在屏幕上的,而是函数的一部
关于
void
main
(
void
)的错误
在x86+windows环境下,或许许多处理器和操作系统环境这样写,都没有问题。
虽然我一直知道,
int
main
(
void
) {
return 0;
}
int
main
(
int
argc,char**argv)
{
return 0;
}
这种写法是c99标准里面规定的。
但我不知道为什么会是这样。
所以经常也时常写成
void
main
(
void
)
但是从可
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章