пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ


Динамическая память. Операторы new и delete

Динамическое выделение памяти – это получение программой памяти во время ее выполнения.

Выделение памяти в с++  -  new;
Освобождение памяти в с++  - delete.
Выделение и освобождение памяти в стиле C++.
1)Одиночная переменная:
<Переменная-указатель>= new  <тип переменной>;
int *p;

  p=new int;  // выделение памяти под целое

  if (!p)  // если  память нельзя выделить

     {

      printf("Недостаточно памяти\n");

      return 1;// выход из функции или организация обхода

                     //следующих операторов

     }

     *p=20;

     printf("%i\n",*p);

     delete p; // освобождение памяти

2)Одномерный массив
Выделение памяти. Переменная-указатель=  new  тип [размер]; Размер- количество элементов в массиве.

3)Освобождение памяти. delete [] переменная-указатель ;

Переменная-указатель – адрес, полученный при выделении массива.

[ ]- динамический массив  удаляется, а память освобождается.

float *p;

p=new  float [10]; // выделение памяти под массив из 10 элементов

for (int i=0; i<10; i++)  p[i]=100+i; // заполнение масcива

for (int i=0; i<10; i++)  cout << p[i] << “  “;// вывод содержимого на 

                                                                      //экран

delete [] p; // удаление массива и освобождение памяти.


28.12.2014; 22:47
хиты: 528
рейтинг:0
Точные науки
информатика
Языки программирования
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь