Программирование на языке высокого уровня. Марапулец Ю.В. - 41 стр.

UptoLike

Составители: 

Если задан размер массива, то значения, не заданные явно, равны 0. Если размер
массива опущен, то он определяется по числу начальных значений.
Так как имя массива после выделения памяти является указателем, к нему при-
менимы все правила адресной математики, связанной с указателями. Таким образом
записи:
имя_массива[индекс] и *(имя_массива +индекс)
эквивалентны. В целом следует отметить, что индекс определяет не номер элемента мас-
сива, а его смещение относительно начала (поэтому номер первого элемента массива
всегда равен 0).
Инициализация символьных массивов может быть выполнена с помощью строк и с
помощью символов. Пример.
char h[]="hello";
Данная инициализация эквивалентна:
char h[]={'h','e','l','l','o','\0'};
Массивы могут быть многомерными. Многомерный массив есть массив, элемента-
ми которого служат массивы. Командная строка.
type имя_массива[a
1
][a
2
]…[a
N
];
где type - допустимый тип, имя_массива - идентификатор, N - размерность массива, a
1
-
количество в массиве элементов размерности N-1 каждый и т.д. Пример.
int A[5][34];
Переменная A - массив из пяти символов, каждый из которых состоит из 34 символов.
Начальные значения элементов многомерных массивов в списке инициализации
располагаются с учетом порядка расположения в памяти. Пример.
int A[4][3][5] = {0, 1, 2, 3, 4, 5, 6, 7};
В данном случае начальную инициализацию получили только первые 8 элементов мас-
сива.
A[0][0][0]==0;
A[0][0][1]==1;
A[0][0][2]==2;
A[0][0][3]==3;
A[0][0][4]==4;
A[0][1][0]==5;
A[0][1][1]==6;
A[0][1][2]==7;
Если необходимо инициализировать только часть элементов многомерного масси-
ва, но они размещены не подряд, вводятся дополнительные фигурные скобки, каждая
41
     Если задан размер массива, то значения, не заданные явно, равны 0. Если размер
массива опущен, то он определяется по числу начальных значений.
     Так как имя массива после выделения памяти является указателем, к нему при-
менимы все правила адресной математики, связанной с указателями. Таким образом
записи:

      имя_массива[индекс] и *(имя_массива +индекс)

эквивалентны. В целом следует отметить, что индекс определяет не номер элемента мас-
сива, а его смещение относительно начала (поэтому номер первого элемента массива
всегда равен 0).
     Инициализация символьных массивов может быть выполнена с помощью строк и с
помощью символов. Пример.

      char h[]="hello";

Данная инициализация эквивалентна:

      char h[]={'h','e','l','l','o','\0'};

     Массивы могут быть многомерными. Многомерный массив есть массив, элемента-
ми которого служат массивы. Командная строка.

      type имя_массива[a1][a2]…[aN];

где type - допустимый тип, имя_массива - идентификатор, N - размерность массива, a1 -
количество в массиве элементов размерности N-1 каждый и т.д. Пример.

      int A[5][34];

Переменная A - массив из пяти символов, каждый из которых состоит из 34 символов.
     Начальные значения элементов многомерных массивов в списке инициализации
располагаются с учетом порядка расположения в памяти. Пример.

      int A[4][3][5] = {0, 1, 2, 3, 4, 5, 6, 7};

В данном случае начальную инициализацию получили только первые 8 элементов мас-
сива.

      A[0][0][0]==0;
      A[0][0][1]==1;
      A[0][0][2]==2;
      A[0][0][3]==3;
      A[0][0][4]==4;
      A[0][1][0]==5;
      A[0][1][1]==6;
      A[0][1][2]==7;

     Если необходимо инициализировать только часть элементов многомерного масси-
ва, но они размещены не подряд, вводятся дополнительные фигурные скобки, каждая

                                                   41