Программирование на языке С. Наместников С.М. - 6 стр.

UptoLike

Составители: 

6
название автор год издания
lib[0] lib[0].title lib[0].author lib[0].year
lib[1] lib[1].title lib[1].author lib[1].year
lib[2] lib[2].title lib[2].author lib[2].year
M
lib[99] lib[99].title lib[99].author lib[99].year
Структуры можно автоматически инициализировать при их объявлении
подобно массивам, используя следующий синтаксис:
struct bool lib = {
Евгений Онегин”,
Пушкин А.С.”,
1995
};
При выполнении данного фрагмента программы в переменные структуры
title, author и year будет записана соответственно информация: “Евгений
Онегин”, “Пушкин А.С.”, 1995. Здесь следует обратить внимание, что
последовательность данных при инициализации должна соответствовать
последовательности полей в структуре. Это накладывает определенные
ограничения, т.к. при инициализации необходимо помнить последовательность
полей в структуре. Стандарт C99 допускает более
гибкий механизм
инициализации полей структуры:
struct book lib = {.year = 1995,
.author = “Пушкин А.С.”,
.title = “Евгений Онегин” };
или
struct book lib = { .year = 1995,
.title = “Евгений Онегин” };
или
struct book lib = {.author = “Пушкин А.С.”,
.title = “Евгений Онегин”,
1995 };
В первом и во втором примерах при инициализации указываются
наименования полей через точку. При этом их порядок и число не имеет
значения. В третьем примере первые два поля указаны через имена, а последнее