switch / case 语法叙述

switch...case 类似于 if,可以控制程式的运作,令程式在不同的情况下执行不同的程式码。switch...case 可将传入 switch 的数值与各 case 的常数数值做比较,当我们找到哪一个 case 的常数数值与传入 switch 的数值相同时,则执行此 case 的程式码区块。

关键字 break 可以脱离 switch...case 的区块,break 通常用于任一 case 程式码区块的最尾端。如果没有使用 break,则程式会持续的执行直到遇见 breakswitch 区块的最尾端。

范例

  switch (var) {
    case 1:
      // 如果var值等于1则执行这段
      break;
    case 2:
      // 如果var值等于2则执行这段
      break;
    default:
      // 如果没有符合的 case 则执行 default
      // default 区块可省略
  }

语法


switch (var) {
   case label:
     // statements
     break;
   case label:
     // statements
     break;
   default:
     // statements
}

参数

var: 与 label 比较的变数值
label: 与 var 比较的数值

See also

if…else


语法参考主页面

本页由热血青年 LBU 译自英文版。

The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.