Читайте также:
|
|
Объявление и инициализация одномерного и двумерного массивов
К элементам массива можно получить доступ по индексу. Массив должен быть определен перед его использованием. Как и другие определения, определение массива включает в себя тип хранящихся в нем переменных и имя массива. Но помимо этого для массива необходимо указать размер, который определяет, сколько элементов массив может содержать. Размер следует за именем и заключается в квадратные скобки.
Значение в скобках должно быть выражением, определяющим целую константу:
int age[4];
доступ к элементам массива может происходить также:
cin >> age [ j ];
j – это номер элемента массива, к которому мы хотим получить доступ.
Когда массив определен, мы можем присвоить его элементам значения.
int days_per_month [] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
В данном случае размер массива указывать необязательно – компилятор сам вычислит его размер по количеству инициализаций. Если вы явно использовали указание размера массива, но оно не соответствует количеству элементов массива, которое инициализировано, то оставшимся элементам будет присвоено значение 0, в случае нехватки инициализаций; если же инициализаций будет слишком много, то компилятор выдаст ошибку.
Данные, сгруппированные в массиве, могут быть как основных типов, так и определенных пользователем, таких, как структуры или объекты. В том числе элементами массива могут быть массивы. В таком случае имеет место многомерный массив. Элементы двумерного массива требуют двух индексов:
sales [ d ][ m ];
Конечно, массивы могут иметь большую размерность. Трехмерный массив — это массив массивов, которые состоят из массивов. Доступ к элементам массива осуществляется с использованием трех индексов: elem = dimen3 [ x ][ у ][ z ];
Формат инициализации двумерного массива базируется на том, что в действительности он является массивом массивов. Инициализирующие значения для каждого подмассива заключены в скобки и разделены запятыми: { 1432.07, 234.50, 654.01 }.
а затем все эти подмассивы, каждый из которых является элементом главного массива, также заключаются в скобки и разделяются запятыми:
double mass_name [ 4 ][ 3 ] = {{ 1432.07, 234.50, 654.01 },
{ 322.00, 13838.32, 17589.88 },
{ 9328.34, 934.00, 4492.30 },
{ 12838.29, 2332.63, 32.93 }
};
Работа с элементами массива через указатель
К элементам массивов можно обращаться и через указатели. Результат действия выражения *(a+j) - тот же, что и выражение a[j]. Пусть j = 3. Тогда мы предполагаем, что выражение содержит в себе значение четвертого элемента массива. Имя массива является его адресом. Т.е. *(a+j) - это адрес чего-то в массиве.
Дата добавления: 2015-08-17; просмотров: 102 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Область видимости и класс памяти. | | | Принципы ООП. Инкапсуляция. Наследование. Полиморфизм. |