/********************
Author:xichen
Data:2011-03-27
本人原创,2011年于电子科技大学
********************/
引言:Switch ,if else语句是在程序设计中使用较为频繁的两种语句,它们实现的功能是相似,都是通过对特定值的判断后执行相应的操作。但是switch和if else执行方式肯定是不同的,这点我们直观地在语句的句式上就可以推断得出的,但是究竟在底层它们是以一种怎样的形式执行的呢? 这是值得我们探究的一个话题,因为只有了解其底层过程,我们才能够更好地认识,选择使用switch,else if语句。
接下来我将通过在VS2008中进行反汇编观察,分析switch语句的执行机制。在描述之前,为了节省篇幅,也为了描述的方便,做出一个约定:
switch(i)
{
case 1:....break; case 2:....break; case 3:....break; case 4:....break; case 5:....break; case 6:....break; default: ...break; }