繁体   English   中英

为什么循环中'i'的值与for循环中初始化的值不冲突

[英]Why is the value of 'i' in the loop not conflicting with the one initialized in the for loop

i i值不冲突,为什么会这样呢?

#include <stdio.h>
    
int main()
{
    for (int i = 0; i < 5 ; i++)
    {
        int i = 10;
        printf("%d \t", i);
        i--;
    }

    return 0;
}

变量i在循环中被初始化为零。 现在,当循环迭代开始时,大括号内的同名变量i会隐藏原始变量(在大括号外定义)。

由于它被初始化为 10,程序显示10 ,然后它会减一,这不会影响 output 因为阴影int i = 10; 在每次迭代中执行。 这将继续发生 5 次。

这是一个演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM