在while 或 for 循环中声明的局部变量是无法在外部访问的。
// 测试代码
int main()
{
for (int i = 0;;)
{
break;
}
if (i)
return 0;
}
结果:编译报错:

同样,在if语句中声明的变量,也无法在外部访问。有时候,我们会想在if语句中声明变量——如果条件符合,就声明变量——但这是行不通的:
int main()
{
if (true)
{
int a = 1;
}
if (a) {}
return 0;
}
编译结果是:
![]()

本文探讨了C++中局部变量的作用域限制,特别是在循环和条件语句中的声明与使用。通过实例展示了编译错误的情况,提醒开发者注意变量声明的位置及其可见范围。
456

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



