写了段程序如下:

原来是,没加这对大括号的,报错。后面差资料得:
把变量声明放到一对{}中是可以的,因为那样变量的作用域就那对大括号中,但直接放在switch的大括号内,却置于某个case之后是不可以的,因为那样意味这有某个变量,其作用域直接在swtich的大括号内,它的作用域本身并没有被跳过(swtich语句并没有被跳过),但它在其作用域内却未必被定义,这显然是荒唐的。
本文探讨了在编程过程中变量声明的位置对于作用域的影响,特别是将变量声明置于switch语句的不同位置时所遇到的问题。文章指出,在switch的大括号内直接放置变量声明而不位于任何case之后是不允许的,这是因为这样定义的变量可能在其作用域内未被初始化就使用。
写了段程序如下:

原来是,没加这对大括号的,报错。后面差资料得:
把变量声明放到一对{}中是可以的,因为那样变量的作用域就那对大括号中,但直接放在switch的大括号内,却置于某个case之后是不可以的,因为那样意味这有某个变量,其作用域直接在swtich的大括号内,它的作用域本身并没有被跳过(swtich语句并没有被跳过),但它在其作用域内却未必被定义,这显然是荒唐的。

被折叠的 条评论
为什么被折叠?