我的程序在显示高度时遇到了一些问题。这是我写的:
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/