VC++:switch中case语句后面使用了return 0;和break;这个return 0;有什么作用?

2025-05-13 14:42:10
推荐回答(5个)
回答(1):

错。
这样写是标准合法的。

因为很多编译器不标准,对于retun语句只是记录返回值,然后还要接下来执行。并且函数类型的不同(pascal,std,cdecl,fast等),编译成汇编代码后函数出口入口的语句都有很大差别。
所以推荐的写法就是case里面即使返回,也要break.否则有些编译器就出错。

你要是用bcb就知道,bcb就经常出现过这样的错误,即使vc,我也遇到过调试状态下不用break会出错的情况。
尤其是大型工程项目,语法必须标准,否则出错很难查找。

回答(2):

return 0;
break;
是错误的;

break是退出当前的循环;
return是退出当前的函数。

回答(3):

return直接返回到调用函数的地方了.return之后的break;纯属多余.

回答(4):

break是退出当前的循环;
return是退出当前的函数。

回答(5):

那个break可以不写

只是为了好看:)