括号是否应用于一行条件陈述?

Jay*_*Jay 4 c c++ java

除了可读性之外,在使用和不使用brakets编写单行循环/条件语句时,性能或编译时间是否有任何差异?

例如,以下是否有任何差异:

if (a > 10) 
    a = 0;
Run Code Online (Sandbox Code Playgroud)

if (a > 10)
{
    a = 0;
}
Run Code Online (Sandbox Code Playgroud)

pbh*_*bhd 6

当然,性能没有区别.但是引入错误的可能性有所不同:

if (a>10)
  a=0;
Run Code Online (Sandbox Code Playgroud)

如果有人扩展代码并稍后写,

if (a>10)
  a=0;
  printf ("a was reset\n");
Run Code Online (Sandbox Code Playgroud)

由于缺少括号,因此将始终打印.有些人要求你总是使​​用大括号来避免这种错误.