C++ 中在 while 和 if 语句后使用分号
当你有一个这样的语句:
while (expression);
无论表达式是否为真,while 循环都会运行。但是,如果你这样写:
if (expression);
无论表达式是否为真,语句都会运行。这是因为 if 和 while 的语法是:
if (<expr>) <statement> // or while (<expr>) <statement>
所以只有当 <expr> 计算结果为真时,才会执行 <statement>。在 while 中,它将进入无限循环。
所以问题是什么 <statement> 它执行。如果没有花括号 {},则下一个语句以 ; 结束,即使该语句为空。请注意,空语句是有效的。
if (<expr>) /* Empty Statement */; while (<expr>) /* Empty Statement */;
在这两种情况下,都没有执行任何操作(在表达式计算后)。虽然 while 可能会进入无限循环。注意:'{}' 是一个语句块(一种包含其他语句列表的语句)。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP