黑马程序员技术交流社区
标题:
main函数为什么我不加return 0,函数还能执行
[打印本页]
作者:
丶白菜你个小番
时间:
2014-7-10 23:32
标题:
main函数为什么我不加return 0,函数还能执行
#include<stdio.h>
int main()
{
printf("aaaa\n");
}
复制代码
直接就能运行
作者:
huangqiwa
时间:
2014-7-10 23:59
C语言是弱于法,你不写return 编译不会报错, 实际上编译器会自动给你加上return!有的时候编译器做了很多事情,我们不知道而已
作者:
且行且惜
时间:
2014-7-11 00:01
你还是观察不认真,编译的时候,编译器肯定有提示的,有个警告,因为警告不会影响程序的正常运行,所以可以继续运行的,你可以再编译一次看看有没有警告!!!
作者:
爱情路13号
时间:
2014-7-11 00:03
return 0;是函数运行之后告诉操作系统程序运行完了,main函数中一般都要加return 0;相当于返回值。即使没有加return 0;系统也会自动加上这一句。但是有的编译器不会加上这一句,运行的时候可能会警告。为了保证程序的可移植性,一般在编写的时候都会带上return 0;
作者:
骑着飞机去看海
时间:
2014-7-11 00:08
没有返回值,则不会结束,你在往后看,看到函数就懂了。
作者:
fantacyleo
时间:
2014-7-11 00:23
当你在操作系统中运行编译生成的可执行文件时,操作系统会在你的可执行文件的main函数调用之后加入一条exit函数调用,exit函数就能够返回系统
作者:
hm123tinghai
时间:
2014-7-11 01:24
定义成int型的函数理论上最终都应当产生返回值,意义在于在各个函数中调用自定义函数也就是调用那个返回值。return 0;不是固定的,也不是标识程序的结束,你也可能return a;看你要返回什么结果了。main函数只是程序的入口,一般用不到返回值,不写return相对于int main不合适,如果你把函数定义成void型也就是无返回值类型就不需要写return语句。(void main)
作者:
楠瓜果
时间:
2014-7-11 14:20
其实你也可以这样理解,return 0;相当于c语言中一个main函数的结束体!不写程序就结束不了,肯定就不能执行的
作者:
54lier
时间:
2014-7-11 15:07
编程习惯,最好都加上return 如果正常执行完毕return 0,错误 return -1,而且这里有返回值,最好返回,就算是编译不报错,也养成习惯返回一个int
作者:
chengnuoaini030
时间:
2014-7-11 19:46
是你省略不写,但是自动给你加上了 只是你不知道
作者:
AndyWang
时间:
2014-7-11 22:49
return 0 表示函数结束的意思 不加的话 编译不会报错 但是可能会有警告 不影响程序运行
作者:
周田金
时间:
2014-7-11 23:17
我们以前学c都没什么return
作者:
幕夏
时间:
2014-7-11 23:29
我也是一直有这个问题。不过不管编译器怎样,还是按照C语言标准来写代码,除了void函数不写返回值外其他函数得写return.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2