gpt4 book ai didi

c - 关于 C double 类型的行为

转载 作者:太空宇宙 更新时间:2023-11-04 00:21:00 27 4
gpt4 key购买 nike

我执行了以下代码片段(使用 gcc 编译)

#include <stdio.h>
void main()
{
double b = 5 % 3 & 4 + 5 * 6;
printf("%lf", b);
}

输出为 2.000000我不明白为什么会这样。

最佳答案

按位 & 具有较低的 precedence*%+。操作数将被分组为

 double b = (5 % 3) & (4 + 5 * 6);  

5%3 = 2 = 0000 0000 0000 0000 0000 0000 0000 0010
34 = 0000 0000 0000 0000 0000 0000 0010 0010
按位 ANDing 都产生 0000 0000 0000 0000 0000 0000 0000 0010 = 2

关于c - 关于 C double 类型的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24758693/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com