Массив - это совокупность элементов одного типа. Для примера возьмём алфавит - список букв, он будет являться массивом. Массив удобно использовать если есть много однотипных данных.
Синтаксис при объявлении:
1 |
тип_массива имя_массива [количество_элементов] = {переменная_0, переменная_1, ...}; |
Или так, если значения элементов массива планируется задать позднее:
1 |
тип_массива имя_массива [количество_элементов]; |
Тип массива определяется типом данных, которые планируется в нем хранить, в нашем примере массив будет типа char (строка). Количество же элементов же может быть только целочисленным значением. Листинг кода:
1 |
char mas[4] = {'A', 'B', 'C', 'D'}; |
Для обращения к какому либо элементу нужно указать имя массива и номер элемента. Важно помнить, что нумерация элементов начинается с нуля, то есть если мы хотим обратиться к элементу 'A', код будет следующий:
1 |
mas[0] |
Работать с элементами массива можно как с обычными переменными: присваивать, менять значение, сравнивать и т.д.
Рассмотрим такой пример - целочисленный массив с 12 элементами:
1 |
int a[12] = {2, 45, 22, 3}; |
Если мы выведем содержимое этого массива на экран, то получим строку вида
1 |
2 45 22 3 0 0 0 0 0 0 0 0 |
Как видно из данного примера, если количество элементов больше чем задано при инициализации, то последние ячейки заполняются нулями. Однако если количество элементов меньше, чем количество задаваемых значений, компилятор вернет ошибку.
Рассмотренные выше массивы являются одномерными, однако массив может быть многомерным (массив массивов).
Это можно представить таким образом - одномерный массив - столбец, двумерный - таблица ( строки и столбцы), трехмерный - книга, содержащая эти таблицы и т. д.
Пример кода
1 2 3 |
int a[2][2]={{1, 2}, {3, 4}}; // двумерный массив - таблица чисел из двух строк cout<<a[0][0]<<" "<<a[0][1]<<" "<<a[1][0]<<" "<<a[1][1]; // будет напечатано 1 2 3 4 |