Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
vyazikov
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 23
#1

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

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

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

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

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

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


Прошу помощи с этой задачей с комментариями.
спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.08.2011, 15:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как обратиться к элементу массива с использованием указателя (C++):

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

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

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

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

Как обратиться к следующему элементу списка? - C++
#include <iostream> using namespace std; template <typename T> class List { struct Node{ T...

Как обратиться к элементу структуры в классе - C++
есть класс #include <iostream> class bayer { public: bayer(); bayer(const char *name, double pay); void...

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

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

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

Как обратиться к полям структуры через указатель и объявление указателя на структуру - C++
Как обратиться к полям структуры через указатель и объявление указателя на структуру? #include "stdAfx.h" #include <iostream> ...

Как обратиться к следующему элементу в std::list? - C++
Добрый день. Пусть у меня есть список std::list<int> l; Есть итератор it, указывающий на элемент этого списка. Я хочу посмотреть на...

Как в связном списке обратиться к элементу по адресу - C++
как в связном списке обратиттся к элементу по нужному адресу? Добавлено через 46 минут как в связном списке обратится к нужному...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.08.2011, 15:36
Ответ Создать тему
Опции темы

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