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] = &quot;Andrew&quot;;
  7.     names[1] = &quot;Mark&quot;;
  8.     names[2] = &quot;Chris&quot;;
  9.     names[3] = &quot;Tom&quot;;
  10.     names[4] = &quot;Daniel&quot;;
  11.     printf(&quot;%s\n&quot;, names[3]);
  12.  
  13.     char *names2[5] = {&quot;Darren&quot;, &quot;Bill&quot;, &quot;Richard&quot;, &quot;Kyle&quot;, &quot;Lee&quot;};
  14.     printf(&quot;%s\n&quot;, names2[0]);
  15.  
  16.     return 0;
  17. }

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