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

Ошибка при освобождении памяти - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ А ваше реально самому выучить язык программирования http://www.cyberforum.ru/cpp-beginners/thread372737.html
Вот хотел спросить а ваше реально самому выучить язык программирования??? и кто из вас уже его выучил
C++ Вычислить номер максимального элемента массива День добрый. Уже несколько дней ломаю голову с одной задачей, но всё безрезультатно :( Прошу помочь. Задача: В одномерном массиве, состоящем из n целых элементов, вычислить: 1) номер максимального элемента; 2) сумму элементов, расположенных после максимального элемента. 1.Использовать динамические массивы (размер массива вводится пользователем с проверкой ввода); 2.Выявить ограничения... http://www.cyberforum.ru/cpp-beginners/thread372726.html
Сохранение программы в exe файле C++
Какие dll библиотеки необходимы для запуска exe программы c++ кода?(Debug) P.S. Просто когда хочу запустить прогу на другом компе выскакивает ошибка что каких то dll не хватает для запуска.
C++ Кодировка файла
Всем привет! Есть файл file.txt в кодировке windows-1251. Нужно написать программу, которая перекодирует этот файл в UTF-8. Заранее огромное спасибо!
C++ Случайный выбор вопроса http://www.cyberforum.ru/cpp-beginners/thread372704.html
Здравствуйте, как можно сделать так, чтобы выпадал случайный вопрос из нескольки добавленных в программу, тоесть например когда запускаешь программу он выдавал любой вопрос из 5 записанных в нем?
C++ Работа с цифрами Не могу понять, что в программе не так. Алгоритм правильный, но расчет не идет. Исходное задание: Напишите программу, принимающую с консоли большое целое число и выводящую его на консоль с разделителями-запятыми после каждых трех цифр. Например, 123654004 -> 123,654,004. Программа должна принимать большое целое с консоли следующим образом: long lNum; std::cin >> lNum; и выводить его... подробнее

Показать сообщение отдельно
GBIT
 Аватар для GBIT
11 / 11 / 1
Регистрация: 05.10.2011
Сообщений: 219
26.10.2011, 16:26  [ТС]     Ошибка при освобождении памяти
точно не знаю по чему, но это
Цитата Сообщение от vndtta Посмотреть сообщение
не знаю поможет ли, попробуй
Код C++
1
char* TableH[] = new char* [n]
точно не работает. при таком выделении памяти получается не массив строк, а... что то другое


Цитата Сообщение от GBIT Посмотреть сообщение
for(i=0;i<n;i++)
{
delete [] TableH[i];
}
delete [] TableH;
Такое освобождение памяти мне подсказали тут
И мне кажется это правильное освобождение..

Код
типа есть массив:
[quote=GBIT;2105382]char **TableH = new char* [n];
for(i=0;i<n;i++)
TableH[i] = new char[32];[/quote]
[] + 31а ячейка [] [] [] [] [] [] ... []
[] + 31а ячейка [] [] [] [] [] [] ... []
[] + 31а ячейка [] [] [] [] [] [] ... []
...
[] + 31а ячейка [] [] [] [] [] [] ... []
и при удалении
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
for(i=n - 1;0 <= i;i--)
delete [] TableH[i];
получается картина:
Код
[X] + 31а ячейка [] [] [] [] [] [] ... []
[X] + 31а ячейка [] [] [] [] [] [] ... []
[X] + 31а ячейка [] [] [] [] [] [] ... []
...
[X] + 31а ячейка [] [] [] [] [] [] ... []

[X] - это та память, что мы освободили
или все же бред написал?
 
Текущее время: 14:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru