对于switch语句,是否可以更改switch语句内部的switch值,使其可以跳转到不同的情况?
前任:

int w = 0;
switch(w)
{
   case 1:
     doSomething();
     w = 3;
   case 2:
     doSomething();
     break;
   case 3:
     doSomething();
     break;
}

基本上,我要问的是,如果我不为一个案例放置一个break语句,而在相同的案例中更改switch的值,那么代码会执行两种情况吗?

最佳答案

是的,您可以在switch内更改值,但是在更改值的情况下中断之前,它不会对新值执行大小写操作。

在您的情况下,无论如何都不会变为0,因为没有大小写为0。但是,如果您将w = 1更改为1,那么它将在情况2下通过,因为您没有中断;但在情况3中不适用。

关于case - 切换语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6105740/

10-11 09:22
查看更多