Главная » Статьи » Програмування » C [ Добавить статью ]

RUS Уроки по программированию на языке С (Необходимость группировки данных.)

  • Необходимость группировки данных.

    Сегодня мы поговорим с вами на тему хранения данных. На одном из первых занятий мы узнали о существовании переменной и определили ее как отрезок оперативной памяти для размещения информации. Несомненно, что нормальная программа не может существовать без переменных, однако, порой простые переменные не решают проблемы оперирования данными. А, дело все в том, что каждая из переменных, рассмотренных в предыдущих уроках способна одновременно хранить лишь один элемент информации. Чтобы сохранить второй, необходимо создать еще одну переменную. Но что делать, если нужно хранить множество элементов однородных типов данных. Будет весьма неудобно создавать для каждого элемента переменную. А, что если требуется работать со многими сотнями элементов? Задача очень быстро становится невыполнимой. Согласитесь, создавать несколько сотен переменных - безумие.

    Как же решить такую казалось бы непростую задачку?! В нашем случае решением являются, так называемые массивы. Рассмотрим определение и особенности.

    Понятие массива.

    1. Массив – это совокупность переменных, которая позволяет хранить несколько однотипных значений.

    2. Все значения этой совокупности объединены под одним именем.

    3. При этом каждая переменная в массиве является самостоятельной единицей под названием - элемент.

    4. Каждый элемент имеет свой порядковый номер - индекс. По индексу можно обращаться к конкретному элементу массива.

    5. Нумерация элементов в массиве начинается с нуля.

    Расположение массива в памяти.

    Массив располагается в памяти последовательно, элемент за элементом. Сначала лежит нулевой, потом первый и т.д. Элементы располагаются по возрастанию адреса: Один элемент массива отстоит от другого на количество байт, равное базовому типу массива. Формула, по которой производится позиционирование по массиву:

    базовый адрес + размер базового типа * индекс;

    Если указывается неправильный адрес производится позиционирование базового адреса на адрес, вычисленный по формулам. При этом программа получает полный доступ к содержимому ячейки памяти, которая ей по сути не пренадлежит. В результате этого может произойти ошибка на этапе выполнения.

    В заключение, следует отметить, что каждый элемента массива имеет свою собственную размерность, которая напрямую зависит от типа всего массива. Например, если массив имеет тип данных int - размер каждого элемента в нем - 4 байта. Таким образом, общий размер всего массива вычисляется по формуле:

    ОБЩИЙ_РАЗМЕР = РАЗМЕР_ТИПА_ДАННЫХ*КОЛИЧЕСТВО_ЭЛЕМЕНТОВ_В_МАССИВЕ


Категория: C | Добавил: DEN-SHP (05.11.2012)
Просмотров: 667 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]