奇思妙想 · 2024年 9月 14日 0

编程语言块语句大括号的位置有要求吗?

30 次浏览

大部分编程语言对于大括号的位置并没有硬性要求,C语言自由的特性,被很多编程语言所借用。

  • C/ObjC/C++/Java/C#/Rust/Swift/JS/仓颉语言的语法角度,没有硬性要求大括号一定要和前后语句同行或换行,自由即可。
  • VB/Python语法通常并不依赖大括号,而是换行和缩进。类似的,Python字典类型初始化所需要的大括号依然很自由,不限定和初始化变量一定同行或换行。
  • Go语言有要求if/while/for语句大括号需要在if/while/for同行,不能在新行。
    同样,结构体初始化语句有包含大括号{}, {一定需要和初始化变量同行,但不要求}和初始值同行。
    例如:
    p := Person {
    name : "Bob"
    }
    但如下是非法的:
    p := Person
    {
    name : "Bob"
    }