C++ масиви


Масиви використовуються для зберігання кількох значень в одній змінній, замість того, щоб оголосити окремі змінні для кожного значення.

Щоб оголосити масив, визначіть тип змінної, вкажіть ім'я масиву, за квадратними дужками і вкажіть кількість елементів яку він повинен зберігати:

string cars[4];

Тепер ми оголосили змінну, яка містить масив з чотирьох рядків. Для того, щоб вставити значення до нього, ми можемо використовувати визначений масив - помістити значення в список розділених комами в фігурні дужки:

string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};

Для того, щоб створити масив з трьох цілих чисел, можна написати:

int myNum[3] = {10, 20, 30};

Доступ до елементів масиву

Ви можете отримати доступ до елементу масиву, звертаючись до номера індексу.

Це вираз для звернення до значення першого елемента масиву cars :

string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};
cout << cars[0];  // Volvo
// вивід Volvo 

Примітка: Індекси починаються з 0: [0] є першим елементом. [1] є другим елементом і так далі.


Зміна елемента масиву

Для того, щоб змінити значення заданого елемента, зверніться до номеру індексу:

cars[0] = "Opel";
string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};
cars[0] = "Opel";  
cout << cars[0];   // Opel
// Opel

Перебір масиву

Для перебору елементів масиву використовуємо цикл for .

Наступний приклад виводить всі елементи в cars масиві:

string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};

for(int i = 0; i < 4; i++) {
  cout << cars[i] << "\n";     // перебираємо значення масиву
}

// RESULT:
// Volvo
// BMW
// Ford
// Mazda 

Пропускаємо розмір масиву

Вам не потрібно вказувати розмір масиву. Але якщо ви цього не зробите, це буде динамічно визначений масив:

string cars[] = {"Volvo", "BMW", "Ford"}; // розмір масиву завжди буде рівний 3

Це абсолютно нормально. Проте, проблема виникає, якщо ви хочете додатковий простір для майбутніх елементів. Тоді ви повинні перезаписати існуючі значення:

string cars[] = {"Volvo", "BMW", "Ford"};
string cars[] = {"Volvo", "BMW", "Ford", "Mazda", "Tesla"};

Якщо вказати розмір, тоді, масив буде резервувати додатковий простір:

string cars[5] = {"Volvo", "BMW", "Ford"}; // розмір масиву - 5, хоча всередині нього лише 3 елементи

Тепер ви можете додати четвертий і п'ятий елемент, щоб не переписувати інші:

#include <iostream>
#include <string>
using namespace std;

int main() {

  string cars[5] = {"Volvo", "BMW", "Ford"};

  cars[3] = "Mazda";
  cars[4] = "Tesla";

  for(int i = 0; i < 5; i++) {
    cout << cars[i] << "\n";
  }

  return 0;
}

// RESULT:
// Volvo
// BMW
// Ford
// Mazda
// Tesla

Альтернативний варіант оголошення масиву

#include <iostream>
#include <string>
using namespace std;

int main() {
  string cars[5];   //  оголошення масиву

  cars[0] = "Volvo";
  cars[1] = "BMW";
  cars[2] = "Ford";
  cars[3] = "Mazda";
  cars[4] = "Tesla";

  for(int i = 0; i < 5; i++) {
    cout << cars[i] << "\n";
  }

  return 0;
}

// RESULT:
// Volvo
// BMW
// Ford
// Mazda
// Tesla

Наш партнер:
beta test mp3 playlist downloader