switch(a)
{
  case 0:{语句;}break;
  case 1:...
  ...
}
case 0:{语句;}break;和case 0:{语句;break;}等价吗?

解决方案 »

  1.   

    等价的~~break用在case句尾表示要跳出switch
      

  2.   

    case 0:{
    语句一;
    语句二;
    语句三;
    }break;
    case 0:{
    语句一;
    语句二;
    语句三;
    break;
    }等价吗?
      

  3.   

    switch的case有多条语句也不必用{},因为:switch (key) {
    case 1:
        语句1;
        语句2;
        break;
    case 2:
        语句3;
        语句4;
    default:
        语句5;
        语句6;
        break;
    }上面的这个例子,如果与case 1匹配,则会把case 1当作入口,一条一条语句的执行,直到遇到break;或者switch语句的最后,在这里显然会执行语句1、语句2,然后遇到break;就结束。但如果与case 2匹配,那么会语句3、语句4,由于后面没有break;所以会继续执行语句5、语句6,然后遇到break;结束。当然,最后一个break可以不要,因为已经到switch的最后了。
      

  4.   

    case 0:{
    语句一;
    语句二;
    语句三;
    }break;
    case 0:{
    语句一;
    语句二;
    语句三;
    break;
    }等价吗?
    -------------------------所以,你的这个问题不仅等价,而且{}根本就不需要。
      

  5.   

    等价
    switch (key) {
    case 1:
        {语句1;
        语句2;
        break;}