C++的bug, 0 和 -0 ?

今天发现了C++的一个bug,运行下面这段代码

cpp 复制代码
#include <iostream>
using namespace std;

int main()
{
	double a = -1;
	double b = 0;
	double c = (a)*b;
	a += 1;

	cout << a << " " << b << " " << c << endl;

	return 0;
}

会得到结果:

调试一下,会发现:

这是一个bug。

相关推荐
AI科技星4 分钟前
统一场论理论下理解物体在不同运动状态的本质
人工智能·线性代数·算法·机器学习·概率论
txinyu的博客6 分钟前
sprintf & snprintf
linux·运维·算法
pas13611 分钟前
34-mini-vue 更新element的children-双端对比diff算法
javascript·vue.js·算法
Qhumaing11 分钟前
数据结构——例子求算法时间复杂度&&空间复杂度
数据结构·算法
Yu_Lijing18 分钟前
基于C++的《Head First设计模式》笔记——状态模式
c++·笔记·设计模式
鱼跃鹰飞21 分钟前
Leetcode1027:最长等差数列
java·数据结构·算法
翱翔的苍鹰27 分钟前
CIFAR-10 是一个经典的小型彩色图像分类数据集,广泛用于深度学习入门、模型验证和算法研究
深度学习·算法·分类
顶点多余32 分钟前
静态链接 vs 动态链接,静态库 vs 动态库
linux·c++·算法
AI视觉网奇36 分钟前
ue5 开发 web socket server 实战2026
c++·学习·ue5
啊阿狸不会拉杆1 小时前
《机器学习》第六章-强化学习
人工智能·算法·机器学习·ai·机器人·强化学习·ml