我知道这样的事情是可能的,我只是忘记了如何正确地做到这一点。
if (true)
printf("something"), return;
Run Code Online (Sandbox Code Playgroud)
return 不是表达式,因此它不能是逗号运算符的操作数。
这是一个有效的(简单的)单行版本:
if (true) { printf("something"); return; }
Run Code Online (Sandbox Code Playgroud)
(注意:单行性被高估了。写作是为了可读性,而不是简洁,如果它们一致,那就是双赢。当然,我自己应该更经常地遵循我的建议......)
编辑:您可能正在考虑
if (true) return (void) printf("something"); // for void functions
if (true) return printf("something"), 0; // for an e.g. int function
Run Code Online (Sandbox Code Playgroud)
这有效,但丑陋且笨拙,因为它掩盖了返回的内容。我不赞成使用它们。
| 归档时间: |
|
| 查看次数: |
160 次 |
| 最近记录: |