关于string转化为float, 在float转化为int
我发现一个问题,在C语言中,我把一个"123.23" string 转化为 float 的 123.23
后, 在
#include <stdio.h>
float chartofloat(char *p)
{
......
......
}
void main(void)
{
char *p = "123.23";
float f;
int k;
f = chartofloat(p);
/* convert float to int and print int */
printf("f = %f\n", f);
k = f;
printf("k = %d.", k);
k = (f - k) * 1000;
printf("%d\n", k);
}
输出结果:
f = 123.23
k = 123.229
主要我发现我在把float转化为int时,出现了问题。
我希望输出的结果:
f = 123.23
k = 123.23
但输出的是上面的请给位帮我解释!!