【发布时间】:2021-02-02 22:28:27
【问题描述】:
我试图使用 scanf 从 C 中的文件获取输入。文件中的数据如下:
223234 <Justin> <Riverside>
这是我尝试过的以下正则表达式:
FILE* fid;
int id;
char name[100], city[100];
char dontcare1[40], dontcare3[40];
char dontcare2,dontcare4[40],dontcare5;
fid = fopen("test.txt", "r");
fscanf(fid,"%d%[^<]%c%[^<]%c%[>]%c ",&id,&dontcare1[0],
&dontcare2,&dontcare3[0],&dontcare4[0],
&city[0],&dontcare5);
我想知道是否有更好的方法来做到这一点,我如何在不创建额外变量的情况下考虑文件中的空格,这似乎没有选择括号中的城市名称。
【问题讨论】:
-
还有很多更好的方法,尽管它们都涉及不使用
scanf。