2014-03-01 49 views
2

我想我只是愚蠢的(我嘗試了所有)。大家幫我出在這裏:atof讀取字符串爲0

#include <stdio.h> 
#include <string.h> 
int main() 
{ 
    const char * y = "747.0"; 
    double x; 
    x = atof(y); 
    printf("%.5f\n",x); 
    printf("%e\n",x); 
    return 0; 
} 

結果:

0.00000 
0.000000e+00 

回答

6

您需要包括stdlib.h提供atof()原型,如果沒有適當的原型,編譯器將假定它的返回值是一個int

+0

需要的atoi包,這就是爲什麼我們建議打開所有警告 –

0

嘗試包括stdlib.h中,因爲我認爲這是你在C.