C++Primer5.3——条件语句

C++Primer5.3——条件语句

1、if语句
①if语句含有两种形式
(1)if(condition)
statement;
(2)if(condition)
statement1;
else
statement2;

②嵌套if语句

③悬垂else
(1)悬垂else:当if多于else时,不知道else跟哪个if匹配。
(2)C++规定,else与它最近的尚未匹配的if匹配,从而消除了程序的二义性。

2、switch语句
①switch语句提供几种选项提供我们选择,选择符合条件的一个选项。

②case标签:case关键字和它对应的值一起被称为case标签。
(1)case标签必须是整型常量表达式。
(2)任何两种case标签的值不能相同。
(3)大多数情况下,在下一个case标签之前都应该有一个break语句。
(4)标签不应该单独出现,它后面必须跟上一条语句或者一个case标签。

③default标签
如果没有任何case标签的值与表达式的值相匹配,程序将执行default标签后面的语句。

④switch语句执行的过程
(1)switch首先对括号里的表达式求值,该表达式紧跟在switch关键字后面。
(2)对表达式求值得到的结果转换成整型结果,然后与每个case标签的值相比较。
(3)如果表达式的求值结果与某个case标签的值相匹配,则会程序从这个case标签的第一条语句或块开始执行,直到swtich结束或者遇到break语句。

⑤注意:因为执行swtich语句时,可能忽略一些case标签。
(1)C++规定,不允许跨过变量的初始化语句直接跳转到该变量作用域另一个位置。

猜你喜欢

转载自blog.csdn.net/qq_47466050/article/details/106917832