相关疑难解决方法(0)

使用逗号来防止需要支撑对

有时,当我有一个多案例if,或者一个非常简单的for,只有两个语句时,我会放弃大括号,而不是使用逗号.这是对该功能的糟糕利用吗?它是丑陋和糟糕的形式吗?或者它是一种节省时间和空间的可接受方式?

例如:

if (something)
    b = y, c = z--;
Run Code Online (Sandbox Code Playgroud)

代替:

if (something) {
    b = y;
    c = z--;
}
Run Code Online (Sandbox Code Playgroud)

c coding-style

2
推荐指数
3
解决办法
290
查看次数

为什么main()需要括号?

我尝试了几种变体

main() return;
Run Code Online (Sandbox Code Playgroud)

要么

main() if();
Run Code Online (Sandbox Code Playgroud)

并获得了不同的错误,其中最奇特的是

/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status

虽然程序只需要一个语句并不常见,但为什么main()要求使用大括号?

有人可以解释为什么在编译int main()时错误是如此奇特;?

c++ program-entry-point language-design

2
推荐指数
3
解决办法
932
查看次数