2 / 2 / 0
Регистрация: 22.10.2013
Сообщений: 13
|
||||||
1 | ||||||
Указатель или ссылка на указатель. В чем разница?24.10.2013, 19:55. Показов 2851. Ответов 8
Метки нет (Все метки)
Есть вопрос про указатели и ссылки на указатели
Хочу в функциях f1() и в f2() динамически выделить память и возвратить этот адрес в main() Функция f1() отказывается изменять указатель в main(), а f2() правильно возвращает
0
|
24.10.2013, 19:55 | |
Ответы с готовыми решениями:
8
Как получить ссылку на указатель или указатель на указатель в массиве? Строковый литерал и указатель на строку. В чем разница? Ссылка и указатель: чем отличаются заданные фрагменты кода? Указатель на указатель - разница способов |
2 / 2 / 0
Регистрация: 22.10.2013
Сообщений: 13
|
|
24.10.2013, 20:21 [ТС] | 3 |
Но ведь f1 принимает адрес а не значение. В нее передается адрес указателя p из функции main
Добавлено через 2 минуты Или значение? Что то я запутался со всеми этими указателями
0
|
Неэпический
|
|
24.10.2013, 20:21 | 4 |
В нее передается адрес, содержащийся в указателе, то есть копия данного указателя, то есть Вы можете поменять то, на что "указывает" указатель, но не можете поменять сам указатель, только его копию.
В f2 же передается ссылка на указатель, поэтому указатель в main изменяется
1
|
2 / 2 / 0
Регистрация: 22.10.2013
Сообщений: 13
|
|
24.10.2013, 20:57 [ТС] | 5 |
Croessmah, Я правильно понимаю что в функции f1 создается копия указателя и в нее записывается адрес указателя из main ? И чтобы я не делал с этой копией, указатель из main всегда будет указывать на один и тот же адрес?
Добавлено через 4 минуты Я кажется понял. В указатель в f1 записывается тот адрес, на который указывает указатель)
0
|
2 / 2 / 0
Регистрация: 22.10.2013
Сообщений: 13
|
||||||
24.10.2013, 21:11 [ТС] | 7 | |||||
И чтобы убедится в этом, я написал вот эту программу, с разными сообщениями чтобы можно было понять что к чему
Код
main() : &n = 0012FF60 main() : p = 0012FF60 &p = 0012FF54 f1() : p = 0012FF60 &p = 0012FE7C f1() : p = 00345158 &p = 0012FE7C main() : p = 0012FF60 &p = 0012FF54 Спасибо
1
|
24.10.2013, 21:36 | 9 |
1
|
24.10.2013, 21:36 | |
24.10.2013, 21:36 | |
Помогаю со студенческими работами здесь
9
Что лучше ссылка или указатель? Константный указатель или указатель на константу? указатель на указатель или присваивание объекта В чем разница между указателем и указателем на указатель? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |