为什么C / C ++需要分号?

时间:2016-11-12 13:52:53

标签: c++ c syntax

我一直在使用Groovy,它似乎能够处理类似的C / C ++语法而不使用分号。我的问题是,为什么C / C ++需要分号?它是"它们是如何设计它的,或者是否存在使用分号可以预防的语言歧义?如果是后者,请举例说明这种含糊之处。

1 个答案:

答案 0 :(得分:2)

这样没有“理由”。这就是语言结构的编写方式。语法包括作者提到的;的用法。

引用C11中的相关段落,章节§5.1.1.2,翻译阶段

  
      
  • 分隔标记的空白字符不再重要。每   预处理令牌转换为令牌。由此产生的代币是   语法和语义分析并翻译为翻译单位。
  •   

newline is a whitespace