Page 89 - ipst-microbox_manual
P. 89
¤ÁÙ Í× ÍÒ §Í§Ô áÅÐ㪧 Ò¹¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX l 89
6.3 ¤Òí ʧèÑ switch...case
໹¤íÒÊèѧ·Õèãªã¹¡ÒõÃǨÊͺµÑÇá»ÃËÃ×ͤҤ§·Õè à¾×èͪÇÂ㹡ÒõѴÊÔ¹ã¨ÇÒ µÃ§¡Ñº case
ã´ áµ¶ÒËÒ¡ÇÒµÑÇá»ÃËÃ×ͤҤ§·Õè·èÕ¹íÒÁÒµÃǨÊͺäÁµÃ§¡Ñº case ã´àÅ â»Ãá¡ÃÁ¨ÐÁÕ¡ÒÃÁͧ
ËÒ¤Òí ʧÑè default áÅÇ ·Òí ¤Òí ʧèÑ ã¹ÊÇ ¹¢Í§ default áµ¶ Ò ËÒ¡äÁÁ ¡Õ ÒÃÃÐºãØ ¹¤Òí ʧÑè default ¡¨ç зÒí ãË
â»Ãá¡ÃÁÍÍ¡¨Ò¡¡Ò÷Òí §Ò¹ã¹ÊÇ ¹ switch ·¹Ñ ·Õ ÁÃÕ »Ù Ẻ·ãÕè ªº Í Âæ ´§Ñ ¹éÕ
switch(variable)
{
case const1 : block1
break;
case const2 : block2
break;
case const3 : block3
break;
|
|
|
default : blockn
break;
}
variable ¤Í× µÇÑ á»Ã·¹èÕ Òí ÁÒµÃǨÊͺà§Í×è ¹ä¢
const ¤Í× ¤Ò ·ãèÕ ªà ·ÂÕ º¡ºÑ µÇÑ á»Ã·¹èÕ Òí ÁÒµÃǨÊͺ ¶Ò µÃ§¡ºÑ ¤Ò ã´ ¨Ðä»·Òí §Ò¹ã¹ºÅÍç ¡¹¹Ñé
default ¤Í× ¡Ã³¢Õ ͧ¡ÒÃà»ÃÂÕ ºáÅÇ äÁµ ç¡ºÑ case ã´àÅ ¨Ðà¢Ò ÁÒ㹺ÅÍç ¡¤Òí ʧÑè ¹éÕ «§Öè
äÁ¨ Òí ໹ µÍ §ÁàÕ ÊÁÍä»
µÇÑ ÍÂÒ §·Õè 6-7
unsigned char key = 5;
unsigned char j = 10;
switch(key)
{
case 1 : j = j +key;
break;
case 3 : j = j +key;
break;
case 5 : j = j +key; ß ·Òí ¤Òí ʧèÑ ºÅÍç ¡¹éÕ
break;
}
/*—————————result———————————*/
j = 15
/*——————————————————————————*/
6.3 ¤Òí ʧèÑ switch...case
໹¤íÒÊèѧ·Õèãªã¹¡ÒõÃǨÊͺµÑÇá»ÃËÃ×ͤҤ§·Õè à¾×èͪÇÂ㹡ÒõѴÊÔ¹ã¨ÇÒ µÃ§¡Ñº case
ã´ áµ¶ÒËÒ¡ÇÒµÑÇá»ÃËÃ×ͤҤ§·Õè·èÕ¹íÒÁÒµÃǨÊͺäÁµÃ§¡Ñº case ã´àÅ â»Ãá¡ÃÁ¨ÐÁÕ¡ÒÃÁͧ
ËÒ¤Òí ʧÑè default áÅÇ ·Òí ¤Òí ʧèÑ ã¹ÊÇ ¹¢Í§ default áµ¶ Ò ËÒ¡äÁÁ ¡Õ ÒÃÃÐºãØ ¹¤Òí ʧÑè default ¡¨ç зÒí ãË
â»Ãá¡ÃÁÍÍ¡¨Ò¡¡Ò÷Òí §Ò¹ã¹ÊÇ ¹ switch ·¹Ñ ·Õ ÁÃÕ »Ù Ẻ·ãÕè ªº Í Âæ ´§Ñ ¹éÕ
switch(variable)
{
case const1 : block1
break;
case const2 : block2
break;
case const3 : block3
break;
|
|
|
default : blockn
break;
}
variable ¤Í× µÇÑ á»Ã·¹èÕ Òí ÁÒµÃǨÊͺà§Í×è ¹ä¢
const ¤Í× ¤Ò ·ãèÕ ªà ·ÂÕ º¡ºÑ µÇÑ á»Ã·¹èÕ Òí ÁÒµÃǨÊͺ ¶Ò µÃ§¡ºÑ ¤Ò ã´ ¨Ðä»·Òí §Ò¹ã¹ºÅÍç ¡¹¹Ñé
default ¤Í× ¡Ã³¢Õ ͧ¡ÒÃà»ÃÂÕ ºáÅÇ äÁµ ç¡ºÑ case ã´àÅ ¨Ðà¢Ò ÁÒ㹺ÅÍç ¡¤Òí ʧÑè ¹éÕ «§Öè
äÁ¨ Òí ໹ µÍ §ÁàÕ ÊÁÍä»
µÇÑ ÍÂÒ §·Õè 6-7
unsigned char key = 5;
unsigned char j = 10;
switch(key)
{
case 1 : j = j +key;
break;
case 3 : j = j +key;
break;
case 5 : j = j +key; ß ·Òí ¤Òí ʧèÑ ºÅÍç ¡¹éÕ
break;
}
/*—————————result———————————*/
j = 15
/*——————————————————————————*/