2025年4月5日 星期六 乙巳(蛇)年 正月初六 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > C语言

C语言switch语句必须包含default分支吗

时间:12-30来源:作者:点击数:77

不!但是为了进行错误检查或逻辑检查,还是应该在switch语句中加入default分支。

例如,下述switch语句完全合法:

  • switch (char_code)
  • {
  • case tyt:
  • case 'y': printf ( " You answered YES ! \n" )
  • break
  • case 'N':
  • case 'n': printf ("You answered NO!\n");
  • break
  • }

但是,如果一个未知字符被传递给这条switch语句,会出现什么情况呢?这时,程序将没有任何输出。因此,最好还是加入一个default分支,以处理这种情况:

......
default: printf ("Unknown response : %d\n", char_code);
          break
......

此外,default分支能给逻辑检查带来很多方便。例如,如果用switch语句来处理数目固定的条件,而且认为这些条件之外的值都属于逻辑错误,那么可以加入一个default分支来辨识逻辑错误。

请看下列:

  • void move_cursor (int direction)
  • {
  • switch (direction)
  • {
  • case UP: cursor_up()
  • break
  • case DOWN: cursor_down()
  • break
  • case LEFT: cursor_left ()
  • break
  • case RIGHT: cursor_ right ( )
  • break
  • default: printf ("Logic error on line number %ld!!! \n",__ LINE__ )
  • break
  • }
  • }

请参见:
   1、什么时候用一条switch语句比用多条if语句更好?
   2、Switch语句的最后一个分支可以不要break语句吗?

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门