小编Pio*_*otr的帖子

C中的单行if语句 - 哪些语句受到影响?

我正在尝试将一些代码从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)

c conditional if-statement

0
推荐指数
1
解决办法
2598
查看次数

标签 统计

c ×1

conditional ×1

if-statement ×1