【发布时间】:2012-06-21 12:19:36
【问题描述】:
可能重复:
Why can't variables be declared in a switch statement?
How can a variable be used when its definition is bypassed?
#include<stdio.h>
int main()
{
int a=1;
switch(a)
{ int b=20;
case 1: printf("b is %d\n",b);
break;
default:printf("%d\n",b);
break;
}
return 0;
}
在 gcc 4.6.3 上运行,输出不是 20。这是怎么回事?
【问题讨论】:
标签: c switch-statement