首页 » 建站技术 » PHP 技术 » 浏览内容

case细节


2005-04-08 16:16:25 9,718 2 发表评论 字体: 作者:C.K.

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

From:http://www.flashot.com/blog/index.php?job=art&articleid=a_20050403_221318

一直是书上传统的
switch(n)
{
  case (1):doSth;break;
  case (2):doSth:break;
  case (3):doSth;break;
  default……
}


今天突然看到这样写的:
switch(n)
{
  case (1):
  case (2):
  case (3):
  case (4):doSth;break;
  case (5):doSth;break;
  default……
}
一开始还真没有理解,
后来想通了,
就像
if(n==1 || n==2 || n ==3 || n== 4)
{
  doSth;
  return;
}
一样,就是执行一个多重判定条件的结构,
因为空语句在switch结构中就是进入下一个case语句,
而switch的代码含义就是封装了一个goto结构,
当n匹配到一者时,他会直接跳至那个代码行执行,
但是假如没有break的话,
他是不会停止执行下面的代码的,
case本身只是一个行标记功能,
而没有意义,
当swiych过后,case就失去了应有的功能而相当于不存在了,
所以,可以代码会一直执行到下面一个break出现才跳出这个代码封装。

网站统计 Statistics

  • 创建时间: 2005年1月3日 距今5064 天
  • 日志总数: 2461
  • 评论总数: 630
  • 标签总数: 654
  • 链接总数: 273
  • 最后更新: 2018-8-31 17:57:04
  • 您是本站第 14156805 位访客

广告区 Guǎng Gào