Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
1

Как обратиться к элементу массива с использованием указателя

29.08.2011, 15:02. Просмотров 1378. Ответов 10
Метки нет (Все метки)

Всем привет, есть некоторая задачка, которую мне очень важно решить...
Дословно пишу условие

в С\С++ обьявлен массив mas[17][19][21] значений типа integer, переменная p-указатель на первый элемент массива.
Как обратиться к элементу массива mas[12][3][6] с использованием указателя р ??

Условие написано как-то глупо но если более подробно, то первый ээлемент массива это
p=mas[0][0][0] за ним скрывается какое-то рандомное значение (массив набит произвольными рандом значениями)

И вот через этот P необходимо обратиться к элементу массива [12][3][6] - вот тут то я понятия не имею что от меня хотят и как это сделать? Сдается мне что им нужен метод при котором как-то вычисляется смещение, или что-то подобное.....(


Прошу помощи с этой задачей с комментариями.
спасибо
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.08.2011, 15:02
Ответы с готовыми решениями:

Как с указателем обратиться к 4му элементу массива
Имеем массив из 50 элементов. Как с помощью указателей обратиться к 4му элементу массива?

Как обратиться к элементу массива по его номеру и удалить этот элемент?
Функция должна находить и удалять первый и последний пробелы в строке. void Trim(char *str) {...

Можно ли обратиться к 3 элементу массива ?
Если у нас есть int *x, y = { 1,2,3,4,5 }, можно ли обратиться к 3 элементу массива вот так? x=y;...

Что нужно делать,чтобы обратиться к конкретному элементу массива?
К примеру:вычислить квадратный корень любого элемента.

Как обратиться к элементу списка?
Подскажите как автоматически (в цикле например) обратиться к члену списка. Список выглядит так:...

10
LosAngeles
Заблокирован
29.08.2011, 15:08 2
хаха, сложные у вас задания
p[12][3][6]
или
*( *( *(p+12) + 3) + 6)
надеюсь не ошибся в последнем примере
0
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
29.08.2011, 15:11  [ТС] 3
А можно более подробно?
я замечательно представляю себе массивы , давайте разберем по шагам.
Передо мной трехмерный массив, взяли мы оттуда несчастное первое значение, а дальше то что?
как используя это значение обратиться к указанному элементу?
Опишите подробнее оба ваших варианта
0
LosAngeles
Заблокирован
29.08.2011, 15:16 4
с помощью операторов [] и * соответсвенно
0
29.08.2011, 15:16
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
29.08.2011, 15:18  [ТС] 5
А расскажите подробнее, что за операторы?
Дело в том, что я не очень знаком с Си, и не сильный программист но решить и разобраться в задаче мне надо...(
* -обычный знак умножения?
[] знаю что если написать mass[]=123 то в самый конец массива запишется значение 123,
0
LosAngeles
Заблокирован
29.08.2011, 15:24 6
сомневаюсь чё то я
0
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
29.08.2011, 15:26  [ТС] 7
Поясните, пожалуйста, что за операторы [] и *
В том числе интересует представленный Вами второй вариант решения задачи.
0
LosAngeles
Заблокирован
29.08.2011, 15:26 8
указатель на массив указателей на массив указателей на элементы некоторого типа. Во! Вроде правильно сказал. Вот так вот представлен трёхмерный массив
0
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
29.08.2011, 15:30  [ТС] 9
Я кстати даже почти понял)))
а чтоже делает оператор []
0
OstapBender
587 / 525 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
29.08.2011, 15:34 10
оператор [] для адресов идентичен *(a+индекс)
a[5] == *(a+5)

более подробно гугли арифметику указателей и оператор звёздочка (взятие по адресу)
0
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
29.08.2011, 15:36  [ТС] 11
спасибо!! ситуация проясняется!!!
вы мне очень помогли
0
29.08.2011, 15:36
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.08.2011, 15:36

Как обратиться к элементу списка
У меня есть список, в нём присутствует 4 позиции: Имя файла, размер, таймер-счётчик и флаг. Меня...

Как обратиться к элементу вектора?
Помогите пожалуйста cout << "Введите размерность массива\n"; int n; cin >> n;...

Как обратиться к элементу списка list ?
list<int> a;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru