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

c++ как обратиться через указатель к данным, которые он адресует? - C++

Восстановить пароль Регистрация
 
Max_92
 Аватар для Max_92
25 / 7 / 2
Регистрация: 26.04.2010
Сообщений: 205
15.09.2012, 13:52     c++ как обратиться через указатель к данным, которые он адресует? #1
c++ как обратиться через указатель к данным, которые он адресует?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2012, 13:52     c++ как обратиться через указатель к данным, которые он адресует?
Посмотрите здесь:

Как передать массив через указатель? C++
Как вывести на экран переменную из функции, которой присваиваеться значение через указатель? C++
Как обратиться к классу через значение переменной? C++
C++ Попрошу разъяснить что означает : list , символ -> и как обратиться к переменным , которые заданы в структуре (inf , next).
как обратиться к элементам массива через указатель? C++
C++ Как вызвать функцию через указатель?
C++ Как вызвать функцию через указатель?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Thinker
Эксперт C++
 Аватар для Thinker
4216 / 2190 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.09.2012, 13:55     c++ как обратиться через указатель к данным, которые он адресует? #2
через унарную операцию *. Например

int x, *px;
px = &x; // px содержит адрес переменной x
*px = 0; // в x записали 0
Max_92
 Аватар для Max_92
25 / 7 / 2
Регистрация: 26.04.2010
Сообщений: 205
15.09.2012, 13:55  [ТС]     c++ как обратиться через указатель к данным, которые он адресует? #3
в случае динамического массива вроде бы это происходит так: сначала отводится память, например a = new int[10], а потом тупо через этот указатель с индексом, например a[5] происходит обращения к конкретным данным. но в случае если это обычный указатель, например float * p = &a, то при обращении к "p" будет получен адрес
Thinker
Эксперт C++
 Аватар для Thinker
4216 / 2190 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.09.2012, 13:58     c++ как обратиться через указатель к данным, которые он адресует? #4
Так и пишите (поле инициализации p = a)

int *a, *pa;
a = new int[10];
pa = a; // никак не pa = &a, a и так содержит адрес участка выделенной памяти
далее обращение к элементам через указатель pa: pa[i] либо *(pa + i). Тоже самое и с a:
a[i] либо *(a + i)
Max_92
 Аватар для Max_92
25 / 7 / 2
Регистрация: 26.04.2010
Сообщений: 205
15.09.2012, 14:01  [ТС]     c++ как обратиться через указатель к данным, которые он адресует? #5
а если допустим есть функция с аргументом char * a, то почему в функцию подставляют не p, где p - это указатель, а *p ??
Thinker
Эксперт C++
 Аватар для Thinker
4216 / 2190 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.09.2012, 14:04     c++ как обратиться через указатель к данным, которые он адресует? #6
... F(char *s) // функция F
...


char *ps = "....";
F(ps) // а не F(*ps)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.09.2012, 14:21     c++ как обратиться через указатель к данным, которые он адресует?
Еще ссылки по теме:

C++ Как узнать тип, переданный через указатель на void?
C++ Как обратиться к элементам массива через указатель?
Как описать в структуре строку не через указатель C++
Как обратиться к полям структуры через указатель и объявление указателя на структуру C++
C++ Как правильно передать массив через указатель?

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

Или воспользуйтесь поиском по форуму:
desu
0 / 0 / 0
Регистрация: 11.05.2012
Сообщений: 23
15.09.2012, 14:21     c++ как обратиться через указатель к данным, которые он адресует? #7
есть функция с аргументом char * a, то почему в функцию подставляют не p, где p - это указатель, а *p ??
Вы заблуждаетесь, подставляют как раз p.
Yandex
Объявления
15.09.2012, 14:21     c++ как обратиться через указатель к данным, которые он адресует?
Ответ Создать тему
Опции темы

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