关于c++的一些变量定义问题
#include<iostream>
using namespace std;
int main(){
int a;
cin>>a;
switch(a){
case 1:
for(int b=0;b<5;b++)
{ cout<<b;}
break;
case 2:
cout<<"dsd";
break;
}
return 0;
}
我想问一下,为什么变量b在case 1:里面定义会编译不同过的显示
E:\c++\gf.cpp(13) : error C2360: initialization of 'b' is skipped by 'case' label
E:\c++\gf.cpp(10) : see declaration of 'b'
而在switch语句外面定义是就可以通过