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

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

Войти
Регистрация
Восстановить пароль
 
Gygocopter
10 / 10 / 5
Регистрация: 05.02.2014
Сообщений: 124
#1

В чем разница между указателем и указателем на указатель? - C++

10.04.2014, 23:12. Просмотров 441. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
int x, *p, *q;
x=10;
p=&x;
q=p;
cout<<*q;
C++
1
2
3
4
5
int x, *p, **q;
x=10;
p=&x;
q=&p;
cout<<**q;
В 1 коде q=p - это указателю q присваивается адрес, который хранит указатель p?
Второй код понятен, указателю адрес указателя. Что лучше использовать?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2014, 23:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В чем разница между указателем и указателем на указатель? (C++):

Ошибка при работе с указателем на указатель - C++
Пытаюсь разобраться с указателем на указатель. // ConsoleApplication3.cpp: определяет точку входа для консольного приложения. // ...

Указатель: Получить значение по адресу, указываемому указателем - C++
Написать программу, в которой выполнить следующие действия: a) Описать указатели на все известные типы данных; b) Выполнить для каждого...

Переделать функцию c указателем на int, на функцию с указателем на void - C++
Есть рабочий код qsort для int: void qsort(int *base, int n) { // Прекратить если количество элементов меньше либо равно единице....

Функция с указателем и индексом(Удаляет в строке лидирующие пробелы. Возвращает указатель на преобразованную строку.) - C++
Ребята помогите зачет получить, на парах не был..( Написать следующие функции в двух вариантах: с использованием индексов и...

Медленнее ли индексация массива, чем работа с указателем? - C++
Преподаватель донимает меня, что я использую индексацию для работы с массивами, вместо того, чтобы использовать смещение и разъименовывание...

Объясните разницу между указателем и ссылкой - C++
Подскажите пожалуйста, в чем разница между этими двумя строками? Distance dist = *(new Distance); Distance&amp; dist = *(new Distance); ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
KasyanDiGris
0 / 0 / 1
Регистрация: 10.04.2014
Сообщений: 9
10.04.2014, 23:17 #2
Да, в первом q присваивается адрес, который сейчас в p (&x)

Ну во втором коде ты сможешь через q еще и p менять
Если это нужно, то конечно второй код лучше
А так, на мой взгляд, первый менее вычурный
0
Fulcrum_013
721 / 746 / 73
Регистрация: 14.12.2014
Сообщений: 5,868
Завершенные тесты: 3
20.04.2015, 22:14 #3
Цитата Сообщение от Gygocopter Посмотреть сообщение
Что лучше использовать?
То что надо в данном конкретном случае. К примеру просто указатель может на массив указывать а не просто на элемент. А двойной соответственно на массив указателей, т.е на двумерный массив, причем с неравными длинами массивов-элементов. Если надо передать указатель на какое либо значение то передаешь просто указатель. например одномерный массив в функцию. А если нужно что то с самим указателем сделать (например передать указатель на одномерный массив в фунцию которая под него примеру память выделит и инициализирует начальными значениями) то нужно передавать двойной, чтобы само значение указателя в результате работы фунуции изменилось.

Добавлено через 6 минут
Цитата Сообщение от Gygocopter Посмотреть сообщение
C++
1
2
3
4
5
int x, *p, *q;
x=10;
p=&x;
q=p;
cout<<*q;
На самом деле это немножко для другого предназначено например:
C++
1
2
3
4
 int x=10, *q;
        q=&x;
       *q*=2;
        cout<<x;
что отпечатает?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.04.2015, 22:14
Привет! Вот еще темы с ответами:

Что общего между именем массива и указателем? - C++
Что общего между именем массива и указателем?

Указатель или ссылка на указатель. В чем разница? - C++
Есть вопрос про указатели и ссылки на указатели :scratch: Хочу в функциях f1() и в f2() динамически выделить память и возвратить этот...

Строковый литерал и указатель на строку. В чем разница? - C++
Добрый день. Начал только изучать С++, не могу понять в чем разница между указателем на литерал и указателем на строку??? Заранее...

Работа с указателем - C++
Есть такой указатель: char *s=&quot;n1=1&amp;n2=2&amp;name=test&amp;sername=test2&quot;; Нужно выделить с этой стоки значение name, то есть &quot;test&quot; и...


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

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

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