switch编程哪里错了啊,这个编程

出现这样的提示你很有可能在某个case标记中定义了局部变量,而后面还有其他的case标记或者default语句。比如说这里的整形变量b

看看编译器提示的信息 cross initialization of int b, 什么意思呢, 就是说跳過了变量的初始化仔细想想,确实是这样我们在case 0 中定义了变量b,在这个程序中直到遇到switch编程的“}”右花括号,b的作用域才终结吔就是说 在case 1 和 default 分支中 变量b依然是可以访问的。考虑这样一种情况如果switch编程匹配了case 1,这样case 0的代码被跳过了那么b就没有定义,如果此时在case 1嘚代码中访问了b程序会崩溃的。如果谁也不匹配执行default也会有同样的危险。

知道了错误的原因解决起来就很简单了

1,将case 0 标记 的代码用 {}括起来这样b的作用域在这个花括号内。在其他的case 标记中不能访问

}

自己新人编程出了个错误,不知道哪里错了求大神指点

自己编程,出个错误找了好半天,不知道怎么错了 求大神指导帮我看一下

贴代码吧,起码贴个错误才知道囧如果楼主不愿意贴代码,那就问百度自己解决:把异常信息粘贴到百度,搜索一下然后自己动手多动手有好处

什么语言,什么程序什么效果,都不告诉如何知道错了。或许是对的

自己可以先用debug调试下或者将报错提示或者源代码提供下

打开App,查看更多内容

}

我要回帖

更多关于 switch编程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信