Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Пример создания одномерного динамического массива. Для примера приведем участок кода программы для одномерного динамического массива с использованием операций new и delete



Для примера приведем участок кода программы для одномерного динамического массива с использованием операций new и delete.

Напомним, что результатом операции new является адрес начала области памяти для размещения данных, указанного количества и типа. При нехватке памяти результат равен NULL.

¼

double *x;

int i, n;

puts(" Введите размер массива: ");

scanf(“%d”, &n);

x = new double [n];

if (x = = NULL) {

puts(" Ошибка! ");

return;

}

for (i=0; i<n; i++) // Ввод элементов массива

scanf(“%lf”, &x[i]);

¼ // Обработка массива

delete [ ]x; // Освобождение памяти

¼

Пример создания двухмерного динамического массива

Напомним, при создании двухмерного динамического массива сначала выделяется память на указатели, расположенные последовательно друг за другом, а затем каждому из них выделяется соответствующий участок памяти под элементы.

...

int **m, n1, n2, i, j;

puts(" Введите размеры массива (строк, столбцов): ");

scanf(“%d%d”, &n1, &n2);

m = new int*[n1]; // Захват памяти для указателей – А (n1=3)

for (i=0; i<n1; i++) // Захват памяти для элементов

*(m+i) = new int[n2];

for (i=0; i<n1; i++)

for (j=0; j<n2; j++)

m[i] [j] = i+j; // *(*(m+i)+j) = i+j;

...

for (i=0; i<n1; i++) // Освобождение памяти

delete []m[i];

delete []m;

...

Дополнительные возможности при работе с пользовательскими функциями





Дата публикования: 2015-09-17; Прочитано: 173 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...