为什么表达式末尾的重复和更多分号不会导致 Visual Studio 编译器中的错误

why duplicate and more semicolon at end of expression not cause error in visual studio compiler?

本文关键字:Visual Studio 错误 编译器 表达式 为什么      更新时间:2023-10-16

Visual Studio 剂量不会对重复分号或一个在编译代码时出现错误产生任何区别,这在较旧的编译器规则(如 Turbo C 或其他)中是违反的!

没关系的代码

int x ;;;;;;;  

这也没关系!

int x;

额外的分号只是C++语言中的空语句。这不是语法错误,因此可以很好地编译。

分号是结束语句,因此您可以执行以下操作:

int x; int y; int z;

都在一条线上。

;被视为

EMPTY 语句。

EMPTY 语句在 C# 中有效,这就是为什么它不会导致任何编译时错误。

int val=40;
if(val > 100)
{
  //do something
}
else
{
 ;  //do nothing
}

从 MSDN:空语句

空语句

不执行任何操作。空语句: ;空语句 当在上下文中没有要执行的操作时使用,其中 声明为必填项。简单地执行空语句 将控制权转移到语句的终点。因此,结束 如果空语句是 到达。