VC#2005快速入门之使用if语句

VC#2005快速入门之使用if语句,第1张

VC#2005快速入门之使用if语句,第2张

如果要根据布尔表达式的结果选择执行两个不同的代码块,可以使用If语句。

理解if语句的语法。

if语句的语法格式如下(if和else是关键字):

if ( booleanExpression )
语句-1;
else
语句-2;

如果booleanExpression计算结果为true,则运行语句-1;否则,运行语句-2。Else关键字和后续语句-2是可选的。如果没有else子句,那么如果booleanExpression为false,什么都不会发生。

例如,下面的if语句用于递增秒表的秒针(暂时忽略分钟)。如果秒的值为59,则重置为0;否则,使用运算符++递增:

int秒;
...
if(seconds = = 59)
seconds = 0;
else
seconds++;


只能使用布尔表达式!

if语句中的表达式必须放在一对括号中。此外,表达式必须是布尔表达式。在其他语言(尤其是C和C++)中,也可以使用整数表达式,编译器可以自动将整数值转换为true(非零值)或false(零值)。# c这是不允许的。如果你写这样的表达式,编译器会报错。

如果您不小心在If语句中编写了一个赋值表达式,而不是执行相等测试,C#编译器也可以识别您的错误。例如:

int秒;
...
if(seconds = 59)//编译时错误
...
if(seconds = = 59)//正确

不经意间写出赋值表达式是C和C++程序容易出现bug的另一个原因。在C和C++中,赋值后的值(59)会被悄悄地转换成布尔值(任何非零值都会被视为真),这将导致每次执行if语句后的代码。

最后,您可以使用布尔变量作为表达式,如下例所示:

bool inWord
...
If(in word = = true)//有,但不常用
...
if (inWord) //更好。

使用块对语句进行分组

有时,在布尔表达式为真的前提下,有必要运行两个或更多的语句。您可以将要运行的语句分组到一个新方法中,然后调用该方法。然而,更简单的方法是将语句分组到一个块中。块是指用一对大括号括起来的一系列语句。在下面的示例中,两条语句将秒变量重置为零,并将分变量递增。让我们用一个块将这两个语句分组。如果秒的值等于59,则执行此块:

int秒= 0;
int分钟数= 0;
...

if(seconds = = 59)
{
seconds = 0;
分钟++;
}
else
seconds++;

重要说明:如果省略了大括号,将会产生两个严重的后果。首先,C#编译器只将第一条语句(seconds=0)与if语句相关联,下一条语句(minutes++)将不再是if语句的一部分。其次,编译器遇到else关键字时,不会将其与前面的if语句关联起来,所以会报错语法。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » VC#2005快速入门之使用if语句

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情