继续用LPC2378 (ARM7),编译环境为Keil3。
当我调用atof()函数转换一个浮点数时,总是不对。具体代码如下:
char *qwe;
float fTmpVal;
qwe = "123.4";
printf("qwe=%s\n",qwe);
fTmpVal = 123.4;
printf("f=%f\n",fTmpVal);
fTmpVal = (float)atof(qwe);
printf("fTmpVal=%f\n",fTmpVal);
此代码,无论qwe具体赋何值,每次输出fTmpVal都是-1717986944.000000。
但是同样的代码,在VC环境下,输出是正确的。
怀疑是编译器的问题。后来发现,果然如此。需要包含一个"stdlib.h"的头文件。
文章评论(0条评论)
登录后参与讨论