int main()
{
char str[10]="3.5";
printf("%lf",atof(str));
return 0;
}
これは、ideone.comでテストしている単純なコードです。私は次のように出力を取得しています
-0.371627
stdlib.hを含めていません。適切なインクルードを追加します。
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[10]="3.5";
printf("%lf",atof(str));
return 0;
}
stdlib.hを含めずに、atof()
は暗黙的に宣言され、コンパイラはintを返すと想定します。
未定義の動作である可能性があります。