C语言关于大括号的问题

2025-04-14 13:12:10
推荐回答(3个)
回答1:

一对大括号称为作用域,在其中定义的变量只在该作用域内有效,且会覆盖作用域外的同名变量。在你的程序中体现不出区别,我写个程序为例:

#include
int main()
{
    int i=1;
    {
        int i=2;
        int j=3;
        printf("%d\n",i); //将输出2
    }
    printf("%d\n",i); //将输出1
    printf("%d\n",j); //将报错未定义变量j
    return 0;
}

回答2:

没有区别。只是后者有一对是多余的而已。

回答3:

您好,无区别