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

Выделение динамической памяти для двумерного массива. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Конвертация int в char* http://www.cyberforum.ru/cpp-beginners/thread117691.html
Доброго времени суток!!! Пытаюсь конвертировать int в char* стандартными средствами c++. Приложение компилируется, но вовремя выполнения выдаёт ошибку Access violatation. char *a; int b = 12;...
C++ Анимация в Borland C++ v.3 Всем привет! Подскажите пожалуйста как делать анимацию в графическом(dos) режиме http://www.cyberforum.ru/cpp-beginners/thread117686.html
Потоки и приоритеты C++
Привет всем кто увидит это сообщение))) вот мое задание и код программы, если увидите что то не правильно подскажите пожалуйста=) так вот у меня такой вопрос... как подсчитать время выполнение...
C++ С++ Указатели.
1. Строки массива А(N,M), не содержащие положительных элементов, заменить нулевыми элементами. 2.Строки массива А(N,M), не содержащие положительных элементов, заменить нулевыми элементами. ...
C++ Удалить повторяющиеся слова в строке http://www.cyberforum.ru/cpp-beginners/thread117633.html
Здравствуйте! Как удалить из строки типа char, введенной с помощью cin.getline(buf, 80), одинаковые слова (слова могут быть разделены одним или несколькоми пробелами и знаками табуляции)? В...
C++ Напечатать треугольник Паскаля — таблицу биномиальных коэффициентов дано целое неотрицательное число K. Напечатать треугольник Паскаля - таблицу биномиальных коэффициентов (C из m по n) для всех возможных целых значений m и n(0<=m<=n<=K) подробнее

Показать сообщение отдельно
MikeSoft
Эксперт С++
3802 / 1778 / 85
Регистрация: 21.11.2009
Сообщений: 2,540
05.05.2010, 13:16
Цитата Сообщение от msangel Посмотреть сообщение
у меня лично в 2008 студии возможно изменять и считывать переменные по адресу уже освобожденной памяти. разве память после удаления не перестает быть доступной?
а если остается доступной, то толку от этой чистки?
Всё правильно. Вы же вызываете оператор new и просите его выделить память для хранения указанного типа, определённого размера. Вы всего лишь получаете указатель на выделенную память.

Цитата Сообщение от msangel Посмотреть сообщение
разве память после удаления не перестает быть доступной?
а если остается доступной, то толку от этой чистки?
В этом и беда. Очистили - память стала быть доступной. Но ведь у нас имеется указатель на этот участок. Поэтому, компилятор и не следит, как он дальше используется. С таким же успехом его мог переписать, например, другой поток программы. А удаление указателя - мера предосторожности, которая в дальнейшем и запретит возможность адресации к освобождённому участку.

А вот то, что нет проверок на то, какая область была выделена - это меня тоже добивает ...
И адресация в matr[-15] - тоже
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru