在c/++中将浮点数转换为两个int

Convert a float to two int in c/++

本文关键字:int 两个 转换 浮点数      更新时间:2023-10-16

NOT A DUPLICATE :上面提到的重复,返回小数部分为浮点数,而不是整型

给定我有一个浮点1.495,我如何将其转换为1495给定两个int变量rd。地点:

int r == 1;
int d == 495;

我可以使用

获得第一个
int r = (int)(1.495f-1l);

但我不确定如何转换或获得d值。

注意我不确定小数部分的范围,小数部分可能是.49.495.4959

在值为.0495.00495的情况下,我可以将值返回为495,我最初没有想到这一点。

谢谢

float f = 1.5;
int r = f;
int d = (f-r)*1000;

更新:

需要澄清的是,虽然这回答了海报上最初提出的问题,但它并没有像现在这样解决问题。

相关文章: