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

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

Войти
Регистрация
Восстановить пароль
 
h8er
15 / 15 / 5
Регистрация: 20.11.2013
Сообщений: 92
#1

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

27.01.2014, 13:56. Просмотров 260. Ответов 3
Метки нет (Все метки)

C++
1
2
3
      int array[5][5] = { {1,2,3}, {1,2},{1,2,3,4}, {1,2,3,4},{1,2,},};
      for(int i = 0; i < 25; i++)
              printf("%d ", array[0][i]);
Как можно представить array[0][i] в виде указателя *(array + ...) ? В смысле как получить доступ к элементам массива работая с ним как с указателем и адресной арифметикой?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2014, 13:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как получить доступ к элементам массива работая с ним как с указателем и адресной арифметикой (C++):

Как получить доступ к элементам вектора - C++
Нашел вот такой код. А вот как получить доступ к элементам вектора? FILE *ToWrite = fopen(&quot;C:\\result.txt&quot;, &quot;w+&quot;); list&lt;string&gt;...

Как получить доступ к элементам формы из созданного класса? - C++
Всем доброго времени суток!:help: Скажите, пожалуйста, как мне обратиться к элементу формы(например TextBox1) извне, то есть из...

Как сделать указатель на структуру и получить так доступ к элементам? - C++
Здравствуйте!Как сделать указатель на структуру и получить так доступ к элементам? #include &lt;iostream&gt; using namespace std; struct...

Создать функцию с адресной арифметикой (масив символов) - C++
Прошу помощи, поскольку по указателям в строках найти инфу очень сложно. В данном случае у меня проблема со 2-й функцией, даже данные...

Можно ли адресной арифметикой перебрать массив массивов по первому индексу во вложенном цикле, а во внешнем по второму? - C++
Можно ли адресной арифметикой перебрать массив массивов по первому индексу во вложенном цикле, а во внешнем по второму?

Классы С++, получить доступ из одного класса к элементам другого - C++
Здравствуйте! Объясните пожалуйста, вот имеется у меня два класса,например вот такие: Class A { private: int i; }

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Tulosba
:)
Эксперт С++
4395 / 3238 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.01.2014, 14:05 #2
Простенький пример:
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
int main() {
    
    int a[2][3] = { 0 };
    a[1][2] = 42;
    std::cout << *((*(a + 1))+2) << std::endl;
    return 0;
}
http://ideone.com/axsLRz
1
h8er
15 / 15 / 5
Регистрация: 20.11.2013
Сообщений: 92
27.01.2014, 14:12  [ТС] #3
Скажите, пожалуйста, а для чего нужно разыменование *(a + 1)? Ведь работа идет по адресам, я правильно понимаю?
0
Tulosba
:)
Эксперт С++
4395 / 3238 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.01.2014, 14:14 #4
Цитата Сообщение от h8er Посмотреть сообщение
для чего нужно разыменование
потому что a - это, если можно так сказать для статического массива, указатель на указатель на целое.
Т.о., чтобы получить значение, требуется два разыменования.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.01.2014, 14:14
Привет! Вот еще темы с ответами:

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

Доступ к элементам динамического массива из структур - C++
Всем доброго времени суток! Проблема вот какая. Есть вот такой вот код. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include&lt;string&gt; ...

Доступ к элементам массива через указатели - C++
Пишу программу для сортировки массива указателей // сортировка объектов через массив указателей на них #include&lt;iostream&gt; ...

Как обращаться к элементам двумерного массива? - C++
У меня та же ошибка в программе #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #define N 4 #define M 3 void main...


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

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

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