c - else if 和 else {if} 之间的区别

标签 c

代码A:

if () 
...
else {
   if (cond == 1) 
       /* do something */ 
}

代码B:

if ()
...
else if (cond == 1) 
   /* do something */

代码A和代码B之间是否存在差异?

最佳答案

只有一个潜在的差异,通过稍微扩展的示例代码就可以看出
(请原谅故意误导性的缩进,这正是您在这种情况下需要记住的问题):

if () 
...
else {
   if (cond == 1) 
       do_something();     /* executed on !1st and 2nd condition */
       do_somthing_else(); /* executed on !1st but unaffecated by 2nd condition */
}
if ()
...
else if (cond == 1) 
    do_something();       /* executed on !1st and 2nd condition */
    do_something_else();  /* ALWAYS executed */

关于c - else if 和 else {if} 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65504255/

相关文章:

c - 矩阵乘法 - 指针和数组

c - 在(选择)聊天客户端上接收消息延迟

c - ps 如何显示 Mac OS X 上所有进程的 argv?

c - 从文件崩溃读取时使用 realloc 扩展缓冲区

c - 如何从高到低排列多个计数器并显示计数器名称标签(这是一个字符)?

c - 以空格为分隔符的字符串三角形C语言

c - IDEA/CFB模式解密和损坏的 block

c - C 中的下标数组

python - 在不使用 C 函数的情况下更新 ctypes python 中结构指针的值

c# - 结合 C 和 C#。结构的