我正在尝试(在C中)从文件中读取如下行:
GFE_1 GFE_8 GFE_19
我想使用fscanf忽略字母和_并将数字末尾的数字放入变量。
显然我所拥有的是不对的:
fscanf(f, "%d", number);
我知道如果他们被一个空格隔开怎么跳过它们但是在这种情况下我已经卡住了。
答案 0 :(得分:3)
像
这样的东西fscanf(f, " %*[^A-Z]_%d", &number);
或者如果前导字符始终相同,那么它就像
一样简单fscanf(f, " GFE_%d", &number);
答案 1 :(得分:1)
您可以跳过阅读字母和_使用此声明
int fscanf ( FILE * stream, const char * format, ... );
fscanf(f, " %*[^A-Z]_%d", &number);