为什么单语句块不要求使用分号? [英] Why do "single statement" blocks require not using semi-colons?
本文介绍了为什么单语句块不要求使用分号?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我通常是一名C#程序员,在Delphi上有很多"有趣"的发现。最让我困惑的是Delphi中的单个语句。
示例C#块
if(x)
Foo();
else
Bar();
Delphi块示例:
if x then
Foo() //note missing semicolon
else
Bar();
他们要求不带分号的目的到底是什么?有没有可以追溯到帕斯卡的历史原因?
推荐答案
PASCAL语言中的分号与C及其派生语言中的分号存在差异。
- 在C中,分号是语句终止符。
- 在Pascal中,分号是语句分隔符。
Wikipedia说明这一点的含义:
这种差异主要表现在两种情况:
可以将多余的分号放在结尾之前的最后一行, 从而正式插入空语句。
- 在PASCAL中,分号不能直接放在其他分号之前 而它在C中是必需的(除非使用BLOCK语句)
- END前的最后一条语句不要求后跟 分号
这篇关于为什么单语句块不要求使用分号?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文