您好,我正在使用代码从数据文件读取所有内容
//................
//...................
char databuff[20];
char ch;
for(int i=0;i<15;i++) {
f[0].getline(databuff,((2*sizeof(double))+(2*sizeof(char))));
//...............
//...............
cDisp=databuff;
cDisp1+=cDisp;
cDisp1+="\r\n";
}
GetDlgItem(IDC_DISPLAYFILE)->SetWindowTextW(cDisp1); 现在,数据似乎是由","分隔的两个双精度浮点数
如何从代码中使用的databuff中提取两个不同双精度变量中的两个双精度值?程序的输出如下所示...
0,334.152
0.0133333,334.152
0.0266667,334.143
0.04,334.143
0.053333334.134
0.0666667,334.125
0.08,334.125
0.0933333,334.125
0.106667,334.116
0.12 334.116
0.133333,334.116
0.146667,334.116
0.16,334.125
0.173333,334.134
0.186667,334.431
发布于 2011-02-11 14:58:04
您可以在数据缓冲区上创建一个strstream,然后使用double d0, d1; char t; str >> d0 >> t >> d1;读取
或者,您可以尝试strchr来定位',',然后在两个子字符串上使用atof (如果您想使用C++方式,则使用std::find )。
https://stackoverflow.com/questions/4966346
复制相似问题