Sample.c:
#include<stdio.h>
#include<stdlib.h>
main()
{
char str[10] = "111.1";
float f = (float)atof(str);
printf ("\n (%s , %f) \n",str,f);
}
上面的代码输出为:
(111.1,111.099998)
请提出我是否想念一些东西。
提前致谢。
最佳答案
使用此方法,因为atof返回double,引用Man Page of atof()
double f = atof(str);
有关更多信息,
Double vs Float in C
关于c - atof()的错误行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31380332/