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

Освобождение памяти malloc free - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти угол исходя из координат мышки http://www.cyberforum.ru/cpp-beginners/thread822477.html
Есть 2 точки , первая это там где будет происходить отрисовка браша а вторая это указатель мыши . Нужно висчитывать угол от 0 до 360 что бы браш всегда смотрел в сторону мышки . Поиски по форуму ни к чему хорошему не привели . Ange = atan2(mouse->y() - y_pos , mouse->x() - x_pos) * 180 ; //не работает Помогите , целый день ищу решение. И еще что можно почитать что бы понимать...
C++ TaskKiller Приветствую вас, господа! Я хотел бы создать приложение, как-бы мини антивирус, которая бы проверяла наличие запущенных задач и завершала бы запрещенные. Я новичек, и мало чего знаю. Помогите мне пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread822473.html
Создать стек, содержащий считанные из текстового файла координаты точек C++
Помогите пожалуйста . В текстовом файле записаны координаты материальных точек . Создать стек, содержащий считанные из текстового файла координаты точек. Рассчитать центр масс материальных точек, заданных своими координатами. Вывести на экран содержимое стека.
C++ Какой элемент останется в кольце последним, если начать по очереди удалять из списка каждый n элемент
Создать структуру с именем Subject с полями: фамилия, имя. Сформиро-вать замкнутое кольцо (односвязный список, у которого последний эле-мент хранит адрес первого) из нескольких структур. С клавиатуры вводится целое чило n. Определить, какой элемент останется в кольце последним, если начать по очереди удалять из списка каждый n элемент (по типу детской считалочки).
C++ Метод класса TList http://www.cyberforum.ru/cpp-beginners/thread822450.html
Написать метод класса TList, аналогичный append, который добавляет элемент не в конце списка, а в его начале.
C++ Добавьте к АТД «очередь» функцию first Добавьте к АТД «очередь» функцию first, что получает первый элемент очереди, не удаляя его, и реализуйте ее аналогично функции del. В отличие от del, она не уничтожает первый элемент очереди (если он есть). подробнее

Показать сообщение отдельно
Systemes
0 / 0 / 0
Регистрация: 05.07.2012
Сообщений: 11
30.03.2013, 00:11  [ТС]     Освобождение памяти malloc free
Да есть указатель)) Я не подумал что через указатель можно освободить память, по этому не копал в эту сторону(( Но даже в этом случае что-то постепенно съедает память
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
typedef struct _efree_node_t {
  void *ptr;
  struct _efree_node_t *next;
} efree_node_t;
 
typedef struct _efree_list_t {
  efree_node_t *head, *tail;
} efree_list_t;
 
efree_list_t efree_list_on_flush_t;
 
void add_efree_list_on_flush(void *ptr) {  // сюда params отправляется из php_array_to_c_array
  efree_node_t *node = (efree_node_t *)malloc(sizeof(efree_node_t));
  node->ptr = ptr;
  node->next = NULL;
  if (efree_list_on_flush_t.head == NULL) {
    efree_list_on_flush_t.head = node;
    efree_list_on_flush_t.tail = node;
  } else {
    efree_list_on_flush_t.tail->next = node;
    efree_list_on_flush_t.tail = node;
  }
}
void free_efree_list_on_flush() {  // тут освобождается память
  efree_node_t *node, *next;
  node = efree_list_on_flush_t.head;
  while (node) {
    next = node->next;
    free(node->ptr);
    node = next;
  }
  efree_list_on_flush_t.head = NULL;
  efree_list_on_flush_t.tail = NULL;
}
 
Текущее время: 09:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru