|
|
1
8
系统需要某种方法来知道条件何时停止,语句何时启动。这意味着要么围绕条件进行parens是可选的, 或 语句周围的大括号是可选的。C的设计者选择使大括号成为可选的(如果只有一条语句)。 考虑一下:
语法分析器
能够
可以判断条件的结束位置和语句的开始位置,但需要括号可以使其更简单。在我的例子中,语法表明完整的语句是
由于正确解析这些示例需要在输入流中查找前面任意数量的标记(而且它可能会使代码更难被人类读取),因此有一个很好的理由需要parens。 |
|
2
4
它是一个语法“特性”,可以追溯到C语言,也可以追溯到之前的某些语言。 从本质上说,这是一种选择
和
在构思C的时候,更短的符号和更少的关键字是趋势。 |
|
|
3
2
[我知道我很可能为此激怒她,但我还是要说出来] 作为一个以VB为主的程序员,有一件事让我非常恼火。在我看来,parens应该是可选的,括号是强制的。如果要求太多,那么微软可以通过引入一个相当于VB的C语言,从VB“借”到C语言中。 但是为什么要麻烦呢?微软设计了基于C、C++和Java的C语言,所有这些都把if条件放在父母中,为什么C应该不同呢? 编辑 老实说,我认为基于C 4对可选参数和命名参数的采用,一个始终在VB中的特性(至少从VB6开始),C(即C 5.0)的下一个版本也可以引入一个“新”特性,这样您就不必键入不必要的括号。
因为有三元
|
|
|
4
0
这是一种来自Java的语言设计选择,它又来自C++,而C又来自C,而C又来自于C语言。??? Python不需要支撑条,因为缩进显示了它的意图。F也一样。这是个好主意。 |
|
|
5
0
顺便说一句,如果我有我的鼓,我会允许一个操作人员在帕伦斯以外:一个领先的感叹号。与复杂的正条件的代码测试相比,复杂的负条件的代码测试最终会得到一组额外的括号,这让我很恼火。 |
|
|
6
0
简单地说,这是由于C/C++/C如何处理空白。您需要某种分隔符,因为语句可以跨多行。您还需要一种方法将语句“阻塞”或分组到一个块中。
如果您的特定问题,则使用()创建表达式。因此,您需要一种方法来告诉编译器您已经完成了表达式的操作,因为不需要(阻塞分隔符)。 |
|
|
tomm · 谷歌表格-将两列相乘,复制第三列 4 年前 |
|
|
ziemsterr · 无法在SQL SELECT语句中找出此语法错误 4 年前 |
|
|
Andrés BolÃvar · AJAX请求未收到我想要的属性 4 年前 |
|
|
clarkk · 当声明向量时,(1)是什么意思? 4 年前 |
|
|
Mike C. · Bash错误[:检查文件是否存在时缺少“]” 4 年前 |
|
|
michael · 错误的脚本和语法问题 4 年前 |