C编程新手求解关于return0的问题。。谢谢

jieqiang3 2013-03-15 03:29:50
看了很多程序,发现很多程序里主函数后面都加了return 0,在编译器里编译了下发现加了和没加编译出来的结果都是一样的。。所以有点不太明白。。。就比如下面这个程序:
# include <iostream>
using namespace std;

int Multi(int n,int m);
double Multi(double n,double m);

int main(){
int a=10,b=20;
double c=10.10,d=20.20;
cout<<Multi(a,b)<<endl;
cout<<Multi(c,d)<<endl;
return 0;
}
int Multi(int n,int m){
return n*m;
}
double Multi(double n,double m){
return n*m;
}
谢谢
...全文
365 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶之香 2013-03-15
  • 打赏
  • 举报
回复
引用 4 楼 turingo 的回复:
在c语言规范中,main函数最好是带返回值的,在更严格的C99标准中,只有以下两种定义方式是正确的: int main(void)和int main(int argc, char *argv[])。 main函数的返回值一般由程序的开发者自定,返回不同的值可以代表不同的含义,一般是代表出错的原因,通常返回0代表程序正常结束,其它返回值所代表的含义,需要程序的开发者向程序……
正解 至于加不加return 0这句,在Windows的vs编译器里都是不会报错的。但是在gcc和g++是编译不过的,所以最好还是加上。 另外强烈建议LZ按照标准C来进行编码。就以上两种main函数的形式,而不要采用void main(void)这种形式。
ForestDB 2013-03-15
  • 打赏
  • 举报
回复
另外不加return 0;那么应该是直接返回的0(隐式返回)。
ForestDB 2013-03-15
  • 打赏
  • 举报
回复
int main() { return 0; } ./a.out && echo hello || echo world 你把return 0和return 1都试试。
图灵狗 2013-03-15
  • 打赏
  • 举报
回复
在c语言规范中,main函数最好是带返回值的,在更严格的C99标准中,只有以下两种定义方式是正确的: int main(void)和int main(int argc, char *argv[])。 main函数的返回值一般由程序的开发者自定,返回不同的值可以代表不同的含义,一般是代表出错的原因,通常返回0代表程序正常结束,其它返回值所代表的含义,需要程序的开发者向程序的用户进行说明。 在UNIX中,一个程序仅仅完成一个简单但有用的操作,所以UNIX中很多程序都是可以分工协作的,后面程序的输入可以从前面程序的输出获得。这样在一些关键应用中,后面的程序可以检测一下前面的程序是否正常退出,如果是正常退出的,再按照预先的流程进行下面的操作,如果前面的程序不是正常退出,那么前面的程序的输出很可能不是后面程序需要的输入数据,这就需要进行特殊的处理。而后面的程序就是靠前面程序main函数的返回值来进行判断的,程序结束时,把值交给操作系统,然后后面的程序或者shell可以从操作系统中取得这个值。
引用 楼主 jieqiang3 的回复:
看了很多程序,发现很多程序里主函数后面都加了return 0,在编译器里编译了下发现加了和没加编译出来的结果都是一样的。。所以有点不太明白。。。就比如下面这个程序: # include <iostream> using namespace std; int Multi(int n,int m); double Multi(double n,double m);……
sbysby00 2013-03-15
  • 打赏
  • 举报
回复
return 0表示程序正常结束,因为前面是int main(){}所以必须返回一个数值,如果写成void main(),则不需要输入return 0!
  • 打赏
  • 举报
回复
return 0; 是告诉操作系统,该程序运行是不是正常结束。0 表示正常结束。 还有exit(0) 这个数字只是你自己指定的。你retrun 1也可以
starytx 2013-03-15
  • 打赏
  • 举报
回复
main主函数有个隐含的 return 0;

64,666

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧