C语言一个函数内直接用花括号括起一段代码有什么用?

例如:
void FFT(struct compx *xin)
{
……
{
……(函数体)
}

}
注意,第二级花括号前没有调用任何函数!!就是直接括起来。这种写法是合法的吗?如果合法,那这么写的意义何在?不用花括号括起来不是一样按顺序编译吗?

可以的。只要你的花括号是成对出现的。花括号里就是 普通的代码,属于这个函数本身
个人认为, 这种主要是为了让代码更具可读性,把代码分成块
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-05-12

第二个{} 用来限定花括号中变量的作用域,使其不影响外面

例如:

int main()
{
    int a = 1;
    {
        int a = 2; // 此处不报错
        cout << a << endl;
    }
    cout << a << endl;
    //int a = 3; // 此处报错:"a":重定义;多次初始化
    a = 3;
    cout << a << endl;
    return 0;
}

输出:

2

1

3

相似回答