關於字符串數據轉化爲float類型的問題

      在做串口通信和網絡通信時,難免會遇到把接受的字符串數據轉化爲float類型。我做雷達時數據文件都是float,每個float數據用換行分開'\n'。在讀文件時直接用fread(buffer, 1, 1024, fp).char buffer[1024],第一個1代表每次讀一個字節,1024代表一共讀取多少次,fp時文件指針。例如數據文件時.dat類型,其中數據如下:

10982.234567

6081.000098

等等:那麼buffer存的數據是“10982.234567\n6081.000098”,每個字符都是暫用一個字節。

那麼把buffer的數據轉化成float程序如下:記得加#include <stdlib.h>

for (int i = 0; i < 1024; i ++)

{

if ( '\n' == buffer[i] )

{

printf("%f", atof(buffer + i));

}

}

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