C++ Primer Plus 6th 6.10 复习题 第8题 case的数字标签和字符标签的区别

1228 人浏览 | 时间: 2019-05-04 17:28:43 | 作者: codexia 会员文章,禁止转载

题目:
8.对于程序清单6.10,与使用数字相比,使用字符(如a和c)表示菜单选项和case标签有何优点呢?(提示:想想用户输入q和输入5的情况。)

答案:  
如果使用整数标签,且用户输入了非整数(如q),则程序将因为整数输入不能处理字符而挂起。但是,如果使用字符标签,而用户输入了整数(如5),则字符输入将5作为字符处理。然后,switch语句的default部分将提示输入另一个字符。

C++技术网辅导详解解答:
    如果使用了整数标签,就要预防答案里提到的这种挂起的情况,所以我们需要对输入的内容进行检测,而不能直接进行输入提取。我们可以预先按照字符提取,然后再辨别是否为数字。最简单的方法就是,获取字符的编码,就可以轻松判断是否为0-9的字符了。而获取字符的方式更容易了。
    另外呢,使用字母作为标签,让我们的界面看上去更加人性化点。

当前文章为会员文章,请前往[用户中心]开通会员后继续阅读。

C++ Primer Plus 6th习题