【发布时间】:2016-02-07 22:40:44
【问题描述】:
我必须能够为我在大学使用 c++ 做的作业排序负零和零,有人能告诉我为什么下面的代码会产生负零吗?我被卡住了,我不确定为什么会这样......
cout << "Enter the number of elements you want to add to the vector:\n";
cin >> x;
cout << "Enter the integers: \n" << endl;
for (int i = 0; i < x; i++)
{
cin >> y;
y = y - 0.0;
cout << y;
Array.push_back(y);
}
如果在对上述向量进行排序时有更好的方法产生负零,请告知。 非常感谢!
【问题讨论】:
-
能否提供minimal reproducible example。
x和y的具体类型是什么? -
x 和 y 是如何定义的?
-
我有理由相信,标准的 C++ 没有定义什么给出负零,它是一个实现细节,硬件实际上是否有负零。换句话说,代码的结果以及是否生成负零取决于编译器和目标处理器。
标签: c++ sorting bubble-sort unsigned-integer signed-integer