gpt4 book ai didi

c++ - C 程序用不同的数字输出不同的值?

转载 作者:行者123 更新时间:2023-11-28 05:36:05 25 4
gpt4 key购买 nike

<分区>

看下面的程序

#include<stdio.h>
int main()
{
float x = 0.1;
if (x == 0.1)
printf("IF");
else if (x == 0.1f)
printf("ELSE IF");
else
printf("ELSE");
}

这里还有一个程序

#include<stdio.h>

int main()
{
float x = 0.5;
if (x == 0.5)
printf("IF");
else if (x == 0.5f)
printf("ELSE IF");
else
printf("ELSE");
}

我们期望从这两个程序中得到相似的结果,因为两者都没有字面上的变化,一切都是一样的,而且比较项也相应地发生了变化。

但是上面的两个程序产生了不同的结果

第一个程序

ELSE

第二个程序

IF

为什么这两个程序的行为不同

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