В последнем уроке я рассказал вам о базовом использовании структуры в программировании на Си. Я дал обзор декларации и определения структур. Вооружившись этими базовыми знаниями, сегодня я расскажу вам, как получить доступ к элементам структуры. Помимо этого я также расскажу вам о выделении памяти для элементов структуры и массива структуры. Итак, начнем.
Структура в C
Доступ к элементам структуры
Важно определить структуру, прежде чем получить к ней доступ. В массивах мы используем индекс для доступа к элементам массива. Но эта концепция немного отличается от них. Для доступа к элементам структуры мы используем точечный оператор или оператор доступа к элементу (.). Мы должны написать имя структурной переменной, за которой следуют точка и элемент структуры. Один небольшой пример приведен ниже.
Над кодом будет отображаться имя, номер броска и оценки ученика s1. Подумайте внимательно, я получил доступ к элементам с помощью оператора точки.
Распределение памяти элементов структуры
Элементы структуры хранятся аналогично элементам массива. Это означает, что элементы структуры также хранятся в смежных местах памяти. Как я уже говорил ранее, во время объявления структурной переменной ему выделяется память. В нашем примере выше 14 байт (10 для строки и 4 для двух целых) будут выделены для s1.
Массив структуры
Прежде чем перейти к этой теме, я хочу спросить вас - возможно ли создать массив структур? Ну конечно да. Если мы можем сделать массив указателей, массив символов и так далее, то мы также можем создать массив структуры.
Создание массива структуры аналогично созданию обычного массива. Для этого нам нужно только определить структуру. После этого мы должны сделать массив структур. Рассмотрим программу ниже, чтобы понять это правильно.
Выход
Пояснение.
В этом примере я храню записи книг в библиотечной системе. Вы можете видеть, что я создал массив структуры размера 3, который хранит 3 записи от пользователя и затем отображает их на экране.
В этом примере я храню записи книг в библиотечной системе. Вы можете видеть, что я создал массив структуры размера 3, который хранит 3 записи от пользователя и затем отображает их на экране.
Комментариев нет:
Отправить комментарий