使用fscanf读取逗号分隔的双精度数

时间:2017-10-16 01:06:58

标签: c scanf delimiter comma

如何读取没有空格的逗号分隔双打?

我尝试了以下操作:fscanf(file, "%lf[^,], &x)但它无法正常工作。

该文件将采用以下格式:

1.0,2.0,4.0
3.0,6.0,1.0

1 个答案:

答案 0 :(得分:2)

您可以直接使用[^,]

,而不是使用,正则表达式
#include <stdio.h>  
int main(){  
FILE *fp;  
double buff[255];
int i=0;
fp = fopen("file.txt", "r");  
while(fscanf(fp, "%lf,",&buff[i++])!=EOF){  
printf("%0.1lf ", buff[i-1] );  
}  
fclose(fp);  
}