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

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

Войти
Регистрация
Восстановить пароль
 
sion5
1 / 1 / 0
Регистрация: 15.10.2013
Сообщений: 42
#1

Размер массива по указателю - C++

15.10.2013, 21:53. Просмотров 489. Ответов 2
Метки нет (Все метки)

Не уверен, что всё правильно понимаю...
Про "new" пишут, что оно выделяет необходимое количество памяти и возвращает указатель на начало блока. А "delete" освобождает память и возвращает операционной системе.

Код
char *p = new char[100];
delete[] p;
Почему тогда пишут, что нельзя определить размер массива по указателю на него?
Как тогда программа знает, сколько памяти должна вернуть команда "delete"?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 21:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Размер массива по указателю (C++):

Определить размер массива по указателю - C++
Собственно вопрос в следующем: можно ли определить размер выделенного динамически массива по указателю на область памяти? int *ptr =...

Размер строки по указателю на неё - C++
int Size(char* text) { return size; // надо вычислить } Size("hello"); Я передаю в ф-ию строку , как вернуть её размер...

Обход массива по указателю - C++
Доброго времени суток. К примеру, у меня есть такой код: #include <iostream> using namespace std; int main() { int mass; ...

Получение массива по указателю - C++
Привет, возникла сложность с пониманием как работают указатели, привожу код test(unsigned char testar) { const unsigned char...

Создание массива по Указателю на массив - C++
(к сведенью. пользую C++, версия Dev C++ 4.9.9.2) Я создал указатель на массив: char (*e); Мне нужно создать по этому указателю...

Передача массива в функцию по указателю - C++
Помогите с заданием нужно передать массив в функцию по указателю

2
Jupiter
Каратель
Эксперт С++
6560 / 3981 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
15.10.2013, 21:55 #2
Цитата Сообщение от sion5 Посмотреть сообщение
Как тогда программа знает, сколько памяти должна вернуть команда "delete"?
потому что оператор new сохраняет размер, как и где он его сохраняет - implementation defined
1
sion5
1 / 1 / 0
Регистрация: 15.10.2013
Сообщений: 42
15.10.2013, 21:59  [ТС] #3
Да...? Ну ладно...
Хотя странно, что освободить блок по указателю можно, а получить размер этого блока - нельзя...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2013, 21:59
Привет! Вот еще темы с ответами:

Ввести размер массива с клавиатуры и передать этот размер в конструктор - C++
Я создал массив объектов. И я хочу ввести размер этого массива с клавиатуры, и передать этот размер в конструктор, как мне это сделать? ...

Правильное удаление массива по указателю из списка - C++
Не удаляется массив символов в структуре. Комментарий в коде удаления. Структура: struct pointDir { char *data; ...

Присвоить Указателю адрес из массива Char - C++
Например есть такой код: #include <iostream> using namespace std; int main() { int a = 123456789; int *sa =...

Определить размерность массива по указателю на него - C++
Дано: template< typename T > void info( T * x ) и int a; info( a ); int b; info( b ); int c; info( c ); int...


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

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

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