NOT A DUPLICATE:上面提到的重复,将小数部分返回到float,而不是int
鉴于我有一个浮点数1.495如何将其转换为,1并495给出两个int变量r和d.哪里:
int r == 1;
int d == 495;
Run Code Online (Sandbox Code Playgroud)
我可以使用第一个
int r = (int)(1.495f-1l);
Run Code Online (Sandbox Code Playgroud)
但我不确定如何投射或获得d价值.
注意我不确定小数部分的范围,小数部分可以是.49或.495或.4959
在值为.0495或者.00495我可以返回的值为495的情况下,我最初没有想到这个.
谢谢
float f = 1.5;
int r = f;
int d = (f-r)*1000;
Run Code Online (Sandbox Code Playgroud)
更新:
需要明确的是,虽然这回答了最初措辞中的海报问题,但它并没有解决现在给出的问题.