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

delete[] не освобождает память? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ квадратная матрица http://www.cyberforum.ru/cpp-beginners/thread598781.html
Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали. Условный оператор не использовать. по условию нужно получить: 4 0 0 0 5 7 0 0 2 5 0 0 2 0 0 0 Не могу понять как должна изменятся i и как она зависит от j
C++ программа вывода двоичной информации в файл с различными расширениями Задание:Запишите двоичную информацию в файлы с расширением .dat, .doc, .bin. #include <stdio.h> #include <conio.h> #define MAX 20 #define n 5 #define m 4 #define file "D:\\data8.txt" int main(void) { http://www.cyberforum.ru/cpp-beginners/thread598760.html
C++ решисть и запрограмировать задачу в С++
1)++n*++m 2)m++<n 3)n++>m
Вычисление значения по формуле C++
очень надо сегодня зачет значение А=1000,В=0.0001
C++ Программа виснет, когда ничего не делаешь (WINAPI) http://www.cyberforum.ru/cpp-beginners/thread598753.html
Доброго времени суток. Наконец-то дело подошло к концу, но на финишной прямой ждал неприятный сюрприз. Зависает на ровном месте буквально через 1-2 минуты работы. Пришлось отлаживать все в супер скоростном режиме, не успела, зависло. Суть: основное окно содержит только меню, потом вызываю дочернее (Administration или Custom). В нем куча всякого хлама. Ничего не кликать, не нажимать. Можно...
C++ Какой из моментов времени был в эти сутки раньше Здравствуйте! Подскажите пожалуйста, что значит библиотека stdlib.h и ctime, и строчка 21-23?? задача такая:"Известна информация о 24-х моментах времени одних и тех же суток: часы(значения от 0 до 23), минуты(от0 до 59) и секунды(от 0 до 59). составить программу сравнивающую два любых момента времени(определяющую какой из моментов был в эти сутки раньше). " #include <iostream> #include... подробнее

Показать сообщение отдельно
Djonny
0 / 0 / 0
Регистрация: 07.06.2012
Сообщений: 3
07.06.2012, 10:16     delete[] не освобождает память?
Приветствую! Такая проблема - имеется функция которая должна заменить строку другой строкой по указанному диапазону:



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void formulatype::newformula(char* formula, char* str0, int start, int end)
 {
    char* formula1=NULL; formula1=new char[255];
     int size=strlen(str0);
     for(int i=0; i<start; i++){formula1[i]=formula[i];}
     
     for(int i=0; i<size; i++){formula1[start]=str0[i]; start++;}
    
     while(formula[end+1]!='\0'){ formula1[start]=formula[end+1]; start++;end++;};
     formula1[start]='\0';
     size=strlen(formula1);
    // delete[] formula1;Здесь delete[] работает
     for(int i=0; i<size; i++){formula[i]=formula1[i];}
     formula[size]='\0';
 
    delete[] formula1; // Тут уже нет
        
 }
Почему после выполнения цикла "for(int i=0; i<size; i++){formula[i]=formula1[i];}" delete[] не работает?
Как исправить?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru