half-horse half-gateway
117 / 83 / 43
Регистрация: 10.05.2016
Сообщений: 563
|
||||||
1 | ||||||
Занимает ли какое-либо место в памяти неинициализированный указатель?02.06.2020, 19:09. Показов 1617. Ответов 6
Добрый день! Появился вопрос: занимает ли какое-либо место в памяти неинициализированнный указатель? Для примера приведу следующий код:
0
|
02.06.2020, 19:09 | |
Ответы с готовыми решениями:
6
Сколько памяти занимает указатель Вводим букву, выводим ее столько раз, какое место она занимает в алфавите Какой запрос нужен, чтобы получить какое место занимает _id по рейтингу Сколько памяти занимает указатель? Ссылка? |
El. Psy. Congroo.
110 / 92 / 32
Регистрация: 09.01.2018
Сообщений: 344
|
|
02.06.2020, 19:21 | 2 |
Занимает.
new лишь выделяет фрагмент данных в куче и возвращает его начальный адрес. Ошибаетесь.
0
|
Неэпический
|
|
02.06.2020, 19:46 | 3 |
BlackStoneBlack, это зависит от того, как ваш компилятор код построит.
sizeof действительно не показатель, по той простой причине, что он дает размер типа, и даже, если туда засунули имя объекта, он выдаст именно размер типа объекта и никакого отношения к реально занимаемой памяти это не имеет.
0
|
El. Psy. Congroo.
110 / 92 / 32
Регистрация: 09.01.2018
Сообщений: 344
|
|
02.06.2020, 20:43 | 4 |
Croessmah, это так, но речь о том, сколько памяти занимает сам указатель, а не данные, расположенные по адресу, который хранится в этом самом указателе. Выделение памяти для локальных данных функции осуществляется одной единственной инструкцией, поскольку это эффективно и размер локального хранилища заранее известен.
Добавлено через 7 минут Пожалуй, это более правильно, ибо компилятор может поступить иначе, но в каком-то общем плане, память для локальных данных выделяется целиком.
0
|
248 / 70 / 9
Регистрация: 22.07.2018
Сообщений: 321
|
|
02.06.2020, 21:01 | 5 |
0
|
Неэпический
|
||||||||||||||||
02.06.2020, 21:15 | 6 | |||||||||||||||
Сообщение было отмечено BlackStoneBlack как решение
Решение
Речь о том, будет ли он занимать память. Компилятор может зарезервировать под него место, а может и нет.
Для примера возьмем код
-O3 :
clang же с опцией -O3 выпилил и указатель и new и delete , т.к. нафиг не нужны:
Опоздал.
0
|
El. Psy. Congroo.
110 / 92 / 32
Регистрация: 09.01.2018
Сообщений: 344
|
|
02.06.2020, 21:46 | 7 |
Зато ваше объяснение более доказательно.
0
|
02.06.2020, 21:46 | |
02.06.2020, 21:46 | |
Помогаю со студенческими работами здесь
7
Какое место число занимает в существующем ряду введенных чисел, если бы они были отсортированы по возрастанию? Как сделать какое-либо действие сразу после запуска программы, без нажатия чего-либо Удаленный файл занимает место Блок занимает пустое место Россия занимает место в мире Пропала папка с раздела, место занимает Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |