Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Mountain
0 / 0 / 0
Регистрация: 15.11.2015
Сообщений: 13
1

Константные указатели и указатели на константу

28.01.2016, 15:48. Просмотров 880. Ответов 2
Метки нет (Все метки)

Чем они, собственно говоря, отличаются?
Поясните, пожалуйста.
Не знаю, как так получилось, что в разных источниках - разные определения.
В лекциях написано одно, читаю книгу - в ней совершенно противоположное определение.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2016, 15:48
Ответы с готовыми решениями:

Указатели на константные объекты
Нельзя создать неконстантный указатель на константный объект по понятным...

Константные указатели в качестве аргументов функций
Вскрылся вот такой пробел в знаниях/понимании. Итак, есть предположим...

Константный указатель на константные данные (указатели)
В общем если раскомментить const то ничего не работает может кто знает как...

Указатели и указатели на указатели, а также типы данных
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс...

Через указатели на указатели посчитать сумму двух чисел и записать в третье
1. Через указатели на указатели посчитать сумму двух чисел и записать в третье....

2
nord_v
329 / 177 / 80
Регистрация: 22.08.2013
Сообщений: 724
28.01.2016, 16:10 2
Лучший ответ Сообщение было отмечено Mountain как решение

Решение

Константный указатель - хранит константный адрес (нельзя изменять значение этого указателя - этот адрес).
Указатель на константу - хранит адрес константы (нельзя, через этот указатель, изменять значение, которое находится по этому адресу).

Добавлено через 12 минут

То что до *, относится к значению по адресу в указателе, то что после *, относится к самому указателю (к адресу в нём).
C++
1
2
3
4
5
6
7
8
9
10
11
12
    int b = 2;
    int* const cp = &b; // константный указатель
    int c = 4;
    // cp = &c; ошибка, нельзя менять значение указателя (адрес в нём)
    *cp = 6; // значение, по адресу в указателе, можно менять
 
    const int* p = &b; // указатель на константу
    //*p = 3; // ошибка, нельзя, через этот указатель, менять значение по адресу в указателе
    int d = 5;
    p = &d; // значение самого указателя (адрес в нём) можно менять
 
    const int* const ccp = &d; // константный указатель на константу
1
Mountain
0 / 0 / 0
Регистрация: 15.11.2015
Сообщений: 13
28.01.2016, 16:18  [ТС] 3
Спасибо)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.01.2016, 16:18

Есть три переменные. Используя указатели на указатели, поменять значение максимальной и минимальной переменной
Мой код. #include <iostream> #include <stdlib.h> #include<iomanip>...

Указатели на указатели с числами. Почему можно присвоить число в 4-ый элемент, если массив из 2 элементов?
Есть массив int **mas; mas=new int*; // выделил место под пять строк, верно...

Отсортировать массив и вывести на экран (массивы и указатели на указатели)
Даны массивы F-фамилий студентов и S-результаты сессии (5 оценок) , причем s-...


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

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

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