c++ - 显示奇怪的字符 Turbo C++

标签 c++

我的程序在显示高度时遇到了一些问题。这是我写的:

if (0 < LaserX < 161) {
LaserX = LaserX/n;
LaserY = LaserY/n;
sprintf(LaserMID, "%.1f, %.1f", LaserX, LaserY);
ShowCo->Text = LaserMID;
}
else { ShowCo->Text = 0; }

所以基本上,当我的 LaserX 介于 0 到 161 之间时,它会显示高度值,超出它的任何值都显示 0。但在我的情况下,当 LaserX 值超出范围时,它会显示 -NAN .什么是-NAN?!我该如何摆脱它? 请指教,thnx。

最佳答案

下面的条件不是你想要的,

if (0 < LaserX < 161) // evaluated from left thus always true (which is unwanted)

你可以把它改成,

if (0 < LaserX && LaserX < 161)

恰恰意味着LaserX大于0且小于161

编辑:NaN = Not a Number .

关于c++ - 显示奇怪的字符 Turbo C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6647953/

相关文章:

c++ - C++ 中的 Iterator 不是一种指针吗?

C++ 函数模板未推导特征向量大小

C++数据结构执行索引列表

c++ - STL用户定义的二进制操作

c++ - freopen 在我的应用程序关闭之前不会写入数据

c++ - 如何访问一组指向该类的指针中的类数据

c++ - cout && 同时写入文件 C++

java -> vs. >= 在冒泡排序中导致显着的性能差异

c# - 获取过去一年的 Facebook 数据?

c++ - 不支持 int64 的 libjson-rpc-cpp?