Я прочитал и сохранил файл данных, который я обрабатываю, в массив массивов символов, один массив символов для каждой строки в файле, и теперь я хочу обработать отдельные строки. Однако я не уверен, как это сделать.
Я читаю каждую строчку так:
/* Read the whole file into an array */
char read_lines[FILE_LENGTH][FILE_WIDTH];
for(i=0;i<FILE_LENGTH;i++) {
fscanf(data_file, "%[^\n]", read_lines[i]);
fscanf(data_file, "%[\n]", dump);
}
Мне нужно прочитать данные в каждой строке, которая отформатирована как %d\t%d\t%d\t%d\t%d, и я не совсем уверен, как прочитать конкретную переменную в функцию сканирования. Я знаю, что fscanf() читает из файла, а scanf() читает из пользовательского ввода, есть ли функция, которая читает из переменной?
Я исхожу из фона python, и в python я бы просто использовал следующий код:
read_lines = open('file.txt').readlines()
for line in lines:
i = lines.index(line)
first[i], second[i], third[i], forth[i], fifth[i] = line.split('\t')
Я действительно не понимаю, как сделать эквивалент в C. Я провел немало исследований, но не нашел ничего полезного. Любая помощь будет оценена по достоинству!
Спасибо!