错误如图:
错误原因:
switch里面的语句属于同一范围,即case 1里面定义的变量在switch任何范围都是可以使用的,理论上case 2也可以使用case 1的变量。
但是如果变量定义在case 1里面,但是n直接等于2的话,就没有运行case 1的语句,这样的话就会导致变量还没有定义,所以会报错误!
为了防止这样的情况,我们一般有两种解决方法:
- 用{ }将case1整个语句括起来
- 将变量定义在switch外面
错误如图:
错误原因:
switch里面的语句属于同一范围,即case 1里面定义的变量在switch任何范围都是可以使用的,理论上case 2也可以使用case 1的变量。
但是如果变量定义在case 1里面,但是n直接等于2的话,就没有运行case 1的语句,这样的话就会导致变量还没有定义,所以会报错误!
为了防止这样的情况,我们一般有两种解决方法: