社区
C++ 语言
帖子详情
return是不是在任何情况下都不需要括号?
Mynameiswuyihao
2009-07-15 09:44:59
有的人说return有没有括号都一样,有的人说return后面是表达式就需要括号。
到底是怎样的?
...全文
1501
22
打赏
收藏
return是不是在任何情况下都不需要括号?
有的人说return有没有括号都一样,有的人说return后面是表达式就需要括号。 到底是怎样的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xixuer_20070803
2009-07-16
打赏
举报
回复
其实都一样,按你的编程习惯吧,
cismylife
2009-07-16
打赏
举报
回复
有没有一样的
love07081403
2009-07-16
打赏
举报
回复
return 2+3-1;不等于return 2+(3-1);则需要
return 2+3;不需要
按的return后表达式 确定
JoyerHuang_悦
2009-07-16
打赏
举报
回复
return_statement ::= RETURN expr SEMI ;
按方法来说,编译器一定把return后的东西当表达式解析,有没有括号就没区别了。
ForestDB
2009-07-16
打赏
举报
回复
没区别return后接表达式,含有()运算符的表达式也是表达式的一种。
padiu01
2009-07-16
打赏
举报
回复
括号有这么重要吗?为什么要纠结于形式呢?
return的用法,分为两种,一种是在被调用的函数中,一种是在主函数中。
在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。
而在主函数中,如果碰到return语句,那么整个程序就会停止,退出程序的执行。C++中我们一般使用return 0; 表示函数正常执行结束。
这两种用法中,主函数里没有特别要说明的,而在被调用的函数中,只要你能保证返回的结果是你需要的,括号又有什么关系?!
ssssstephen
2009-07-16
打赏
举报
回复
上机调试一下,应该没区别
jhony_lee
2009-07-16
打赏
举报
回复
还是加上比较放心
xutaozero21
2009-07-16
打赏
举报
回复
习惯问题吧,如果表达式比较复杂,加上比较好
mu_yang
2009-07-16
打赏
举报
回复
[Quote=引用 14 楼 ForestDB 的回复:]
没区别return后接表达式,含有()运算符的表达式也是表达式的一种。
[/Quote]
我认为那个()是分隔符
不是运算符
全球全网精准引流软件SaaS平台
2009-07-16
打赏
举报
回复
[Quote=引用 13 楼 padiu01 的回复:]
括号有这么重要吗?为什么要纠结于形式呢?
return的用法,分为两种,一种是在被调用的函数中,一种是在主函数中。
在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。
而在主函数中,如果碰到return语句,那么整个程序就会停止,退出程序的执行。C++中我们一般使用return 0; 表示函数正常执行结束。
这两种用法中,主函数里没有特别要说…
[/Quote]
没啥区别,功能都一样!
「已注销」
2009-07-16
打赏
举报
回复
一个样
emyueguang
2009-07-15
打赏
举报
回复
没有区别!
lzp729
2009-07-15
打赏
举报
回复
[Quote=引用 6 楼 Mynameiswuyihao 的回复:]
引用 3 楼 cheng_fengming 的回复:
不是,许多情况下是不需要括号的
如:
return 0; //相当于return (0);
return head; //相当于return (head);
许多情况下???
拜托不要讲这么含糊,什么叫许多情况下?
[/Quote]
那么就让我来一言以蔽之, 你想要加就加, 不想加就不加, 没区别
AlcatrazX
2009-07-15
打赏
举报
回复
没区别的~看个人的风格了
austin_minny
2009-07-15
打赏
举报
回复
当然,除非要return的表达式里自身有括号。总之貌似对于return本身是没区别的
Mynameiswuyihao
2009-07-15
打赏
举报
回复
[Quote=引用 3 楼 cheng_fengming 的回复:]
不是,许多情况下是不需要括号的
如:
return 0; //相当于return (0);
return head; //相当于return (head);
[/Quote]
许多情况下???
拜托不要讲这么含糊,什么叫许多情况下?
taodm
2009-07-15
打赏
举报
回复
这个是(0)相当于0吧,和return没关系吧。
[Quote=引用 3 楼 cheng_fengming 的回复:]
不是,许多情况下是不需要括号的
如:
return 0; //相当于return (0);
return head; //相当于return (head);
[/Quote]
飞天御剑流
2009-07-15
打赏
举报
回复
有没有括号都一样的
cheng_fengming
2009-07-15
打赏
举报
回复
不是,许多情况下是不需要括号的
如:
return 0; //相当于return (0);
return head; //相当于return (head);
加载更多回复(2)
return
后面加
括号
和不加
括号
return
后面加
括号
和不加
括号
:
return
是关键字,不是函数,其后面的
括号
不是必须的,加
括号
易于阅读代码。
python
return
函数带
括号
和不带
括号
的区别_python定义函数不带
括号
吗
函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()等。也可以创建用户自定义函数。函数定义函数定义的简单规则:函数代码块以def关键词开头,后接函数标识符名称和圆
括号
(),任何传入参数和自变量必须放在圆
括号
中间函数内容以冒号起始,并且缩进若有返回值,
Return
[expression]结束函数;不带
return
表达式相当于返回None函数通常使用三个单...
return
后面的内容 加
括号
和不加
括号
有什么区别 ?
完全没有区别。
return
是关键字,不是函数,因此其后面的
括号
不是必须的; 加
括号
易于阅读程序代码,有误
括号
不影响运行结果。
java
return
括号
_java – 围绕返回值的
括号
– 为什么?
我常常看到这样的代码(C,C,有时是Java):
return
(value);我认为这些
括号
没有任何好处.所以我的问题是,如果程序员假设返回某种函数并将返回值作为参数,或者是否真的存在这些
括号
有意义的
情况
?我知道类似的问题已经被问过here,但这只与ANSI C有关.我想知道是否有特定于C或Java的方面尚未得到解答.解决方法:关于C.
括号
放在有表达式的地方,并且希望返回值为表达式的值.即使这样也...
定义带参数的宏,宏体是否
需要
加
括号
?
在某些
情况
下,使用
括号
可以增加代码的可读性和减少错误,建议加
括号
、养成良好的编程习惯。2.如果宏体包含多个语句,你
需要
使用 do { ... } while(0) 来确保宏在任何地方使用时都不会引入意外的副作用。3.如果宏体中包含控制流语句,如 if 或 for ,通常不
需要
括起来,但要确保宏的使用不会导致语法错误。5.如果宏体中包含宏运算符,如字符串化( # )或标记粘贴( ## ),通常不
需要
括起来。定义带参数的宏时,宏体是否
需要
括起来取决于宏的使用方式和目的。
C++ 语言
65,210
社区成员
250,518
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章