c++/ return 0:的问题

来源:百度知道 编辑:UC知道 时间:2024/06/09 02:38:55
请问 return 0表示程序运行正常, return 其它值表示程序在运行过程中发生了异常.

int main()
{

return 0;
}

int main()
{

return -1;
}

这两个程序 执行起来都没有 错误
为什么 int main() 后 就必须返回 return 0;呢
定义一个int函数后 return 1-100000;难道不可以么 ??

那为什么说

return 0表示程序运行正常, return 其它表示程序在运行过程中发生了异常

只是一个 习惯吗?

因为你用的是 int main() ,所以程序结束要送返一个整数。
如果用 void main() , 就不用 return 了。

习惯上 return 0 表示程序运行正常,别的值表示不正常,用不同的“不正常”值表示不正常的特殊状况。

“定义一个int函数后 return 1-100000;难道不可以么 ??”
可以,(100000 数值大了,可以用小一点的)。

送返的值只在刚送返时有效,一般程序员(新手)通常都不知道到哪里去取它,更不知如何用它。换言之,送返的值,没啥用场。所以你就用 void main() ,不必理会 return 。

定义了int,那么函数必须返回整型,否则出错,一般我们习惯是用1来表示程序正常退出,用0来表示程序异常退出。
如果要将返回值设置为其他整型,也没有错误,这要根据实际情况来运用。

如果你还有什么问题,发邮件给我吧
mangohappy@qq.com

新的C或C++标准要求main()函数返回值必须为int型,不支持void型,所以你为了使程序保存可移植性,必须遵循标准。

int main()
{
return 0; //这一条返回语句可以省略
}
至于返回值是返回给系统,一般说来没有什么作用,但是你在调试程序,或通过系统执行管道能够获得程序这个返回值,来判断程序的行为。
如:
int main()
{
//do other
if("结果1")
return 1;
else if("结果2")
return 2;
else
return 0;
}
这样就可以在程序结束时捕获返回值来判断程序行为了。通常我们都是在正确时返回0,可以理解为相当于操作系统执行这样的操作
int error_code = main();
//if(!error_code){ //程序正确}