char字符串轉double浮點函數——strtod

       最近在編寫通信協議解碼程序時需要把char字符串轉換爲double雙精度字符串。本想自己寫段字數類型轉換的程序,就網上看看大家遇到這類問題都是採取怎樣的處理方式。經過一番搜索,發現函數strtod可以實現這一功能。

      使用函數strtod之前需要先添加頭文件#include <stdlib.h>。strtod的原型如下:

double strtod (constchar* str, char** endptr)

       參數中,str爲要轉換的字符串的地址,endptr 爲第一個不能轉換的字符的指針。轉換後的結果作爲返回值返回。在轉換過程中strtod會自動掃描str字符串,跳過前面的空白字符比如空格、tab等,直到掃描到數字、正負號纔開始進行轉換,直到檢測到不符合轉換條件的字符時終止轉換,並把不符合轉換條件的字符指針由endptr返回,如果endptr爲NULL,則參數endptr不使用。

      下面舉一個例子例子說明一下。分別定義兩個字符串test和str,然後使用strtod把這兩個字符串轉換爲double型數據d1和d2。通過仿真測試,可以看到strtod確實達到了我們期望的目的。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章