c - C中快捷键的解释

标签 c

有人可以解释一下下面列出的这两个语句到底发生了什么:

1) int enabled = val == 0; //val is an int

2) int sync = param || (foo->delay == NULL); //param and delay is both int

最佳答案

int enabled = val == 0;

读为

int enabled = (val == 0);

(val == 0)
如果 val 为 0 或不为 0,

将为 0 或非零。然后将使用该值初始化 enabled

相当于:

int enabled;
if(val == 0)
{
    enabled = 1;
}
else
{
    enabled = 0;
}

现在您对第二个进行相同的分析

关于c - C中快捷键的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48407104/

相关文章:

c++ - 如何以编程方式使系统崩溃

c - 将 Knuth 随机数生成器集成到我的代码中

c - Scanf 函数不等待字符串输入

c - 片段着色器中未使用纹理数据 - OpenGL

c - 是否可以用 tee 捕获标准输入?

c - 无法理解如何处理 C 字符串

c - 如果参数数量未知,如何遍历 va_list?

c - ISO C90 错误 : Declarations

c - 指向返回结构指针的函数的指针

c - 我的消息队列在哪里产生段错误?