c - 这个构造是什么意思 "__builtin_expect(!!(x), 1)"

标签 c clang gnu

<分区>

具体来说,我问的是双 '!'在 __built_in 的参数中。

根据“C”语言,它是双重否定吗?

谢谢-

最佳答案

!! 只是两个紧挨着的 ! 运算符。这是一种将任何非零值转换为 1,并保持 0 不变的简单方法。

关于c - 这个构造是什么意思 "__builtin_expect(!!(x), 1)",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24999408/

相关文章:

linux - Makefile:108: *** 配方在第一个目标之前开始

objective-c - 即使在范围外使用时,在范围内创建的对象也会被释放

python-3.x - 在 macOS 上为 Python 3.6.3 使用 dbm.gnu

c - 在信号处理的上下文中,究竟哪些变量需要是 sig_atomic_t?

c - static const int 和 static int const 有什么区别?

clang - 如何使用 LLVM 生成 SVE 向量

c++ - 如何在 macOS 的旧扩展 clang 和 gcc 编译器中初始化数组和 vector ?

c - Linux dladdr1() : Unable to get absolute pathname of the matched file

c++ - 指针数组说明

c - random 或 rand 函数打印相同的值,即使在不同的机器上也是如此