C、C++、C#、java这些语言里,if后面都可以跟括号也可以不跟括号
很多新手搞不清到底什么时候加括号,什么时候不加括号,if的作用范围到底是什么
C语言教科书上只说不加括号作用于1行,加括号就可以作用于多行
这不能说不对,但是其实没有说到点子上
{ }是块标识符,它定义了一个块
一个块可以看做一个匿名函数,它有自己的作用域和生命周期,除了没有函数名不能反复调用不能传参数,其他性质跟函数没有区别
而if、else、for、while这些语句其实永远只能作用于1条语句
只不过如果后面跟的是{ },它执行块的时候块会作为一个整体把里面包裹的代码都执行了而已