C: Массивы

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

Массив объявляется почти так же, как и обычная переменная:

int lottery[6];

Несложно заметить, что в приведенном выше объявлении массива указан тип его элементов (int), его имя (lottery) и его длина (6).

Элементы могут быть добавлены в массив на этапе его объявления (или инициализации):

int lottery[6] = {5, 42, 28, 19, 6, 23};

Доступ к отдельным элементам массива может осуществляться по их числовым индексам, причем первый элемент массива имеет числовой индекс 0:

choice = lottery[3];

Изменение значения определенного элемента массива также осуществляется по его индексу:

lottery[3] = value;

Допускается использование многомерных массивов для хранения специфических данных (например, элементов матриц):

int matrix[10][10];

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

choice = matrix[0][9];

Пример

В примере рассматриваются простейшие манипуляции с массивами, содержащими по пять имен.

  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.     char *names[5];
  6.     names[0] = "Andrew";
  7.     names[1] = "Mark";
  8.     names[2] = "Chris";
  9.     names[3] = "Tom";
  10.     names[4] = "Daniel";
  11.     printf("%s\n", names[3]);
  12.  
  13.     char *names2[5] = {"Darren", "Bill", "Richard", "Kyle", "Lee"};
  14.     printf("%s\n", names2[0]);
  15.  
  16.     return 0;
  17. }

Загрузить файл исходного кода