1

C 中是否有一个格式说明符,它将输出一个数字值,小数点留在数字上,但小数点被截断后尾随零?

计算的值是浮点数,使用 %.4g 会接近所需的输出,除了将小数点从数字中删除会产生问题。

以下数字格式对于机器控制通过 RS232 端口读入是合法的: ( 10.0001 , 0.111 , .22 , 0. ) 但是,发送的代码包括没有小数点的数字;例如 "G00 X4" 导致机器保存字符串 "G00 X00.0004" 。机器将输入的一个或多个不带小数点的字符解释为正确格式输入的最低有效数字。

我可以简单地使用 %.4f 转换,但部分目标是删除尾随零。这台机器的内存严重受限,每个字符都很重要。另一种选择是生成预期的输出数字,将它们转换为字符,然后测试每个数字的尾随零并根据需要截断。我非常希望有更优雅的东西,但我没有在转换字符中找到任何东西。

提前致谢。

4

0 回答 0