Pio*_*otr 0 c conditional if-statement
我正在尝试将一些代码从C翻译成另一种语言.我没有快速访问C编译器,只是发现自己与单行if语句混淆.我知道这样的陈述:
if (condition) [statement]
Run Code Online (Sandbox Code Playgroud)
和
if (condition)
[statement]
Run Code Online (Sandbox Code Playgroud)
可以在没有括号的情况下进行评估,即相当于:
if (condition) {[statement]}
Run Code Online (Sandbox Code Playgroud)
和
if (condition)
{[statement]}
Run Code Online (Sandbox Code Playgroud)
分别,但我不确定我正在处理的示例代码.它会:
if (ge.g[*l][*k].s==1) *i=1; else *i=Ne;
*j=*l;
Run Code Online (Sandbox Code Playgroud)
我觉得第二行不受if语句的影响,但是从代码的上下文来看并不是很明显.长话短说:以上相当于:
if (ge.g[*l][*k].s==1) {*i=1;} else {*i=Ne;}
*j=*l;
Run Code Online (Sandbox Code Playgroud)
要么
if (ge.g[*l][*k].s==1) {*i=1;} else {*i=Ne;
*j=*l;}
Run Code Online (Sandbox Code Playgroud)
?
以下代码
if (ge.g[*l][*k].s==1) *i=1; else *i=Ne;
*j=*l;
Run Code Online (Sandbox Code Playgroud)
正确格式化时,如下所示:
if (ge.g[*l][*k].s==1)
*i=1;
else
*i=Ne;
*j=*l;
Run Code Online (Sandbox Code Playgroud)
这是带括号的等效代码:
if (ge.g[*l][*k].s==1)
{
*i=1;
}
else
{
*i=Ne;
}
*j=*l;
Run Code Online (Sandbox Code Playgroud)
这显示了正确格式化代码的重要性,因此人类可以阅读和理解,而不仅仅是编译器.
| 归档时间: |
|
| 查看次数: |
2598 次 |
| 最近记录: |