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

Динамическая память. Что такое realloc? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программно вызвать BSDOS http://www.cyberforum.ru/cpp-beginners/thread1303670.html
здравствуйте,хочу пошутить над другом сделая ошибку в ос и вызовя бсдос(на сколько я знаю,для этого надо переполнить озу)
C++ Из положительных элементов матрицы сформировать новую. Написать два варианта программы: без применения указателей и с указателями. Ввод массива с помощью генератора случайных чисел. Имя матрицы:N(10,10) Действия:Из полож.элементов матрицы N... http://www.cyberforum.ru/cpp-beginners/thread1303668.html
Написать рекурсивную функцию, которая вставляет букву в указанное место C++
Написать рекурсивную функцию, которая вставляет букву в указанное место. Вы должны ввести слово и букву, которая будет вставлена на указанную позицию. Например мы ввели Argentina d 4. Программа...
Вывод в консоль из нескольких потоков C++
Здравствуйте. В программе выводятся данные на консоль из нескольких потоков, из-за чего в консоли получается мешанина. Можно ли как-нибудь заблокировать вывод одного потока, пока другой не закончит...
C++ Проект из нескольких файлов http://www.cyberforum.ru/cpp-beginners/thread1303640.html
Выдает ошибку: error C3861: test: идентификатор не найден. и warning C4627: #include "test.h": пропущен при поиске использования предкомпилированного заголовка. test.h: int test(int); ...
C++ Показать правую половину матрицы на левую зеркально симметрично относительно вертикальной оси Заполнить матрицу случайными числами. Показать правую половину матрицы на левую зеркально симметрично относительно вертикальной оси. подробнее

Показать сообщение отдельно
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
3908 / 2145 / 549
Регистрация: 18.10.2014
Сообщений: 3,755
18.11.2014, 10:08
Цитата Сообщение от Sergooor Посмотреть сообщение
Да,читал.Вот что я ему ответил.Если я не прав пожалуйста напишите как верно.
p = (char*)realloc(s,100);
p - указатель на на новый блок памяти размером 100
s- указатель на начало блока памяти размеров 100
А в чем отличие указателей s и p затрудняюсь.
Вам же вроде ясно объясняли, что после такого вызова 'realloc' указатель 's' в общем случае становится "мусором" (если 'realloc' прошел успешно). А вы говорите, что мол "s - указатель на начало блока памяти размеров 100". Это не верно.

В общем случае 'realloc' имеет право перенести блок в новое место в памяти, а старая память будет полностью освобождена. Указатель 'p' в такой ситуации будет указывать на новый блок, а указатель 's' останется указывать на старое, уже освобожденное место. Указатель, указывающий на освобожденную память можно считать "мусором".
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru