В этом уроке я расскажу вам о двух темах: массиве указателей и трехмерных массивах. Итак, не теряя времени, давайте перейдем к первой теме этого урока.
Массив указателей в C
Как я уже говорил, «Массив - это набор элементов схожих типов данных». Мы уже создали массив целых чисел, чисел с плавающей точкой и так далее. Итак, один вопрос, который возникает. Можем ли мы сделать массив указателей? Ну, ответ, конечно, да. Чтобы создать массив, мы должны выполнить только одно условие, то есть он должен содержать элементы одного типа данных. Таким образом, мы можем хранить указатели изолированных переменных внутри массива. Давайте возьмем один пример, чтобы понять это.
Выход
23 54 65 45
23 54 65 45
объяснение
- В начале программы я объявил одномерный массив указателей размером 4. Это означает, что он может хранить адреса четырех изолированных переменных-указателей.
- После этого я объявил некоторые целочисленные переменные и сохранил в нем некоторые значения.
- Теперь я сохранил адреса целочисленных переменных внутри массива указателей a.
- В последнем я напечатал все значения по адресам, хранящимся в этом массиве, используя цикл for.
Примечание. Мы можем даже хранить адреса других массивов внутри массива указателей.
3D-массив в C
Как следует из названия, это массивы, имеющие три измерения. Обычно программист редко использует трехмерные массивы. Они в основном используются для программирования игр. Так что я только дам вам обзор об этом.
Объявление и инициализация 3D-массива
Давайте возьмем один пример, чтобы понять это.
int a [2] [2] [2] = {
{
{13, 56},
{54, 67}
},
{
{64, 87},
{23, 678}
}
};
{
{13, 56},
{54, 67}
},
{
{64, 87},
{23, 678}
}
};
На языке C трехмерные массивы рассматриваются как набор двумерных массивов. В приведенном выше примере мы также можем сказать, что мы создаем два 2D-массива. Ниже приведен пример трехмерного массива, который также является комбинацией трех двумерных массивов.
3D-массив в C - источник изображения |
Выделение памяти в 3D-массиве
Распределение памяти трехмерного массива аналогично двумерному массиву . Поскольку элементы внутри 3D-массива всегда хранятся в смежных местах памяти.
Комментариев нет:
Отправить комментарий