我有一些问题需要理解为什么允许一种声明和初始化局部变量的方法,而且不是一种方法。
例如,这不会编译:
if ("b" == "b")
int a = 1;
然而,以下示例编译:
if ("b" == "b") {
int a = 1;
}
和
int a;
if ("b" == "b")
a = 1;
你能帮我解决这个问题吗?
即使我没有使用a
,{
个问题, }
也应该在范围内。如果有帮助,编译器建议的错误是:error: not a statement
- 因此,它不会将int
识别为语句。