c - Linux平台下atof總是回0.0
PHP中文网
PHP中文网 2017-07-05 10:45:54
0
1
1099

程式碼如下

#include<stdio.h>

int main(){


   char* s = "123.3";
   double d = atof(s);
   printf("%lf\n", d);

   return 0;
}

結果總是為0.000000,而不是123.3,為什麼?

PHP中文网
PHP中文网

认证0级讲师

全部回覆(1)
迷茫

因為你沒有include stdlib.h啊(”゜ロ゜)」
這是一個隱藏坑。因為你沒有包含頭文件,所以就沒有函數聲明,沒有函數聲明,則預設函式庫函數的回傳值是int型的。
你編譯時加上-Wall的話,它會很明確的告訴你沒有聲明的。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板