Народ,опишите способы обьявление и обращение к масиву в с++.Спс.
Обьявление и обращение к масиву в с++
Сообщений 1 страница 5 из 5
Поделиться2Tue:25,September,2007 21:09:35
Такой же как и в С.
int mas[3]={5,21,3};
mas[1]=9;
двумерный
int mas[3][5];
Поделиться3Tue:25,September,2007 21:14:40
Спасибо,я тут накопал еще один методик-проверю и выложу....
Поделиться4Tue:02,October,2007 1:41:04
Спасибо,я тут накопал еще один методик-проверю и выложу....
Хмм.. Через указатель? Выкладывай, посмотрим;)
Поделиться5Tue:02,October,2007 17:28:19
В виде ответа выкидую небольшую статейку:
Обратиться к элементу массива можно еще одним способом, используя для этого указатель. Указатель – это переменная, значением которой является адрес другой переменной, т. е. номер единицы памяти, которая выделена для переменной. Указатель может ссылаться только на объекты заданного типа.
Имя массива является константой-указателем на первый элемент массива.
В любом случае массив будет представлять собой последовательность ячеек
известной длины указанного базового типа, а указатель связывается с адресом первого элемента массива.
Пример:
int A[5], *Pa = A;
Доступ к элементам массива с помощью указателя может осуществляться двумя способами:
1) с помощью операции разыменования указателя '*' *Pa;
здесь необходимо перемещаться по области памяти, выделенной под массив с помощью аддитивных операций '+' и '-' или унарных '++' и '--';
2) с помощью операции индексирования элементов массива '[ ]' Pa[i];
Так как имя А ассоциируется с адресом начала массива в памяти, а указатель Pa содержит этот адрес, то операция индексирования может одинаково применяется к этим объектам. A[0] адресует тот же элемент массива, что и Pa[0].
Увеличивая на единицу значение указателя, получаем адрес следующего элемента (числовое значение адреса при этом увеличивается на размер памяти элемента массива). Над элементами массива можно выполнять все операции, допустимые для типа элемента. Особенностью алгоритмов обработки массивов является то, что все или большинство (или какое-то число) элементов обрабатываются одинаково (по одному алгоритму). Поэтому, решая задачу, приходится в том или ином порядке просматривать (перебирать) элементы массивов. Чтобы осуществить перебор, надо определить правило изменения индекса элементов (для многомерных массивов – индексов).
3.2.1.Указатели на многомерные массивы
При размещении элементов многомерных массивов они располагаются в памяти подряд по строкам, т.е. быстрее всего изменяется последний индекс, а медленнее - первый. Такой порядок дает возможность обращаться к любому элементу многомерного массива, используя адрес его начального элемента и только одно индексное выражение.
int arr[m] [n]:
Адрес (arr[i][j])= Адрес(arr[0][0]) + (i*n+j)*k,
где k – количество байтов, выделяемое для элемента массива (в зависимости от типа).
Указатели на многомерные массивы в языке СИ - это массивы массивов, т.е. такие массивы, элементами которых являются массивы. При объявлении таких массивов в памяти компьютера создается несколько различных объектов.