Я хотел бы прочитать все числа из файла .txt
, используя sscanf
. В основной функции я открыл файл .txt
с fopen( name.txt, "r")
. Следующий код читает только первые строки и первые числа, но я не могу повторить его:
int test(FILE *file){
int l = 0;
char buffer[256];
char *poi = NULL;
while(fgets(buffer, 256, file) != NULL){
poi = buffer;
for(;*poi != '\n'; poi++){
sscanf(buffer, "%[^0-9]%d", zahl[l].buf, &zahl[l].number);
l++;
}
}
Например:
В файле .txt
есть следующий текст:
In 2019 we had 200 accidents
In 2020 we had 199 accidents
Приведенный выше код будет читать только 2019 и 2020, но не 200 или 199 - как я могу сказать sscanf
продолжать сканирование до появления новой строки '\n'
?