Мне нужно прочитать файл с определенным шаблоном: у него всегда будет «Буква (один символ) Числовое число Числовая строка» Например: A 20 22 2340 HELLO WORLD Так что я пытаюсь поместить каждую вещь вотдельный элемент моего списка.
Я знаю, как получить первый символ и 3 числа и поместить его в новую переменную, но я не знаю, как получить только окончательную строку.Если я использую fgets, он получит всю строку и, если я использую fscanf, он получит первое слово, но после пробела ничего не получит.Как я могу прочитать только строку и сохранить ее в новой переменной?
int a, b, c, x, k = 0;
FILE *file;
file = fopen("Test.txt", "r");
while (fgets(buffer, 100, file) != NULL){
sscanf(buffer, "%c %i %i %i ", &a, &b, &c, &x);
Events.Key = k;
Events.Event = a;
Events.Day = b;
Events.Month = c;
Events.Year = x;
Insertion(Events, Data); //call my function to insert in the list
k++;
}
В этом коде я могу получить значение из (моего предыдущего примера) A 20 22 2340, но, если я добавлю другое% s и строка в sscanf, он получит только "HELLO" и, если я использую fgets, он получит всю строку.Как я могу получить всю строку, включая пробелы?Спасибо