Arduino:Справочник языка Arduino/Типы данных/array

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Проверка/Оформление/Редактирование: Мякишев Е.А.


Массивы

Массивы (arrays) — именованный набор однотипных переменных, с доступом к отдельным элементам по их индексу.

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

Ниже приведены несколько корректных вариантов объявления массивов:

int myInts[6]; //Массив может быть объявлен без непосредственной инициализации элементов массива, как в случае массива myInts.
int myPins[] = {2, 4, 8, 3, 6}; //Массив myPins был объявлен без явного задания размера. Компилятор сам посчитает фактическое количество элементов и создаcт в памяти  массив необходимого размера.
int mySensVals[6] = {2, 4, -8, 3, 2, 1};
char message[6] = "hello"; //Размер может быть задан явно, одновременно с инициализацией элементов массива. Обратите внимания, что при создании массива типа char, необходим дополнительный элемент массива для нулевого символа.

Доступ к элементам массива

Индексация массива начинается с 0. Это значит, что для массива с 10-тью элементами, индекс 9 будет последним:

int myArray[10]={9,3,2,4,3,2,7,8,9,11};
     // myArray[0]    первый элемент, содержит 9
     // myArray[9]    последний элемент, содержит 11
     // myArray[10]   это неверно возможно возвращение произвольного значения из области памяти не относящийся к массиву

Присваиваем значение элементу массива:

mySensVals[0] = 10;

Возвращаем значение элемента массива:

x = mySensVals[4];

Массивы и FOR циклы

Чаще всего для перебора элементов цикла используется цикл for, счетчик цикла используется как индекс для доступа к каждому элементу массива. Например, для вывода массива через Serial порт можно использовать следующий код:

int i;
for (i = 0; i < 5; i = i + 1) {
  Serial.println(myPins[i]);
}

См.также

Внешние ссылки