Массивы

Массив — это нумерованный набор переменных одного типа. Переменная в массиве называется элементом, а ее позиция в массиве задается индексом.

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

int arr[3] = {10, 20, 30};
for (int i = 0; i < 3; ++i) {
   std::cout << &arr[i] << std::endl;
}

Результат:

0x23fe40
0x23fe44
0x23fe48
Примечание

Объявление и инициализация массива

Объявление массива выглядит следующим образом:

<Тип> <Переменная>[<Количество элементов>];

Пример объявления массива из трех элементов, имеющих тип long int:

long arr[3];

При объявлении элементам массива можно присвоить начальные значения. Для этого после объявления указывается оператор =, а далее значения через запятую внутри фигурных скобок. После закрывающей фигурной скобки обязательно указывается точка с запятой. Пример инициализации массива:

long arr[3] = {10, 20, 30};

Количество значений внутри фигурных скобок может быть меньше количества элементов массива. В этом случае значения присваиваются соответствующим элементам с начала массива. Пример:

long arr[3] = {10, 20};
for (int i = 0; i < 3; ++i) {
   std::cout << arr[i] << ' ';
} // 10 20 0

В этом примере первому элементу массива присваивается значение 10, второму — значение 20, а третьему элементу будет присвоено значение 0.

Присвоить всем элементам массива значение 0 можно так:

long arr[3] = {0};
for (int i = 0; i < 3; ++i) {
   std::cout << arr[i] << ' ';
} // 0 0 0

или так:

long arr[3] = {};
for (int i = 0; i < 3; ++i) {
   std::cout << arr[i] << ' ';
} // 0 0 0

Если при объявлении массива указываются начальные значения, то количество элементов внутри квадратных скобок можно не указывать. Размер будет соответствовать количеству значений внутри фигурных скобок. Пример:

long arr[] = {10, 20, 30};
for (int i = 0; i < 3; ++i) {
   std::cout << arr[i] << ' ';
} // 10 20 30

Количество элементов массива можно указать с помощью константы, объявленной с помощью ключевого слова const (в языке C в этом случае нельзя выполнять инициализацию при объявлении массива):

const int ARR_SIZE = 3;
long arr[ARR_SIZE] = {10, 20, 30};
for (int i = 0; i < ARR_SIZE; ++i) {
   std::cout << arr[i] << ' ';
} // 10 20 30

Можно также воспользоваться директивой препроцессора #define:

#define ARR_SIZE 3
long arr[ARR_SIZE] = {10, 20, 30};
for (int i = 0; i < ARR_SIZE; ++i) {
   std::cout << arr[i] << ' ';
} // 10 20 30

Если при объявлении массива начальные значения не указаны, то:

  • элементам глобальных массивов автоматически присваивается значение 0;
  • элементы локальных массивов будут содержать произвольные значения, так называемый «мусор».

Учебник C++ (MinGW-W64)
Учебник C++ (MinGW-W64) в формате PDF

Помощь сайту

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов