C++ 浮点数比大小
// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
int _tmain(int argc, _TCHAR* argv[])
{
//因为-1变成255
int a = -1;
unsigned int b = 1;
if (a > b){
std::cout << "a >b\n";
}
else{
std::cout << "a <=b\n";
}
//
float c = 0.000003;
float d = 0.000001;
printf("%f-%f\n", c, d);
//这种比较是错的
if (c > d){
std::cout << "c ==d\n";
}
else{
std::cout << "c !=d\n";
}
//这种比较浮点数的方式是对得
if (abs(c - d) > 0.000001){
std::cout << "c > d\n";
}
else{
std::cout << "c <= d\n";
}
getchar();
return 0;
}
输出结果
a >b
0.000003-0.000001
c ==d
c > d