gpt4 book ai didi

c - 如何在嵌入式 c 中获得最接近的整数值?

转载 作者:太空宇宙 更新时间:2023-11-04 08:46:05 27 4
gpt4 key购买 nike

我在嵌入式 c 中工作,变量 x 是一个传感器数据,它是一个整数(介于 1 和 100 之间),我需要在 lcd 上输出变量 y 作为 x 的线性关系,但在将其四舍五入到最接近的整数之后,这段代码能用吗?如果不是,那么还有什么其他方法可以做到这一点。

int x
float y
int z
x=4 /*say its 4*/
y=((x*3.45)+3.5) /*which is a decimal*/
z=(unsigned int)(y)

最佳答案

int z = ((x * 3.45) + 3.5) + 0.5;  /* assuming x is non-negative */

float 到整数的转换包含在隐式转换中,因此您无需显式执行。但是转换是一个截断,所以额外的 +0.5 会让你得到实际最接近的整数。

关于c - 如何在嵌入式 c 中获得最接近的整数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21647270/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com