是否有可能在cpp中检查零下0?

inf*_*ged 4 c++

这可能是一个愚蠢的问题,但我真的有一个0和0的问题.

我正在计算函数的斜率,并且根据向量(向右或向左),它是0或-0.

是否可以执行if条件并找出斜率是0还是-0?执行以下操作无效.

if ( slope == 0.0f )
std::cout << "direction vector towards right";
else if ( slope == -0.0f )
std::cout << "direction vector towards left"
Run Code Online (Sandbox Code Playgroud)

我粗略地没有提供工作源代码,因为我认为这与问题无关.对上述内容的简单答案将有所帮助.

MSa*_*ers 10

你在找std::signbit.两个零都相等,所以你的检查不起作用,但是信号是不同的.