Пример. Динамическое выделение памяти. Динамическими  называются  массивы,  размер  которых  неизвестен  на  этапе  написания программы.  Прием, о котором мы будем говорить, относится уже не к стандартному языку Си, а к его расширению Си ++. Существуют и стандартные способы выделения памяти в языке Си (с помощью функций malloc и calloc), но они не очень удобны. Следующая  простейшая  программа,  которая  использует  динамический  массив,  вводит  с клавиатуры размер массива,  все его элементы, а затем сортирует их и выводит на экран.

#include <stdio.h>

void main()

{

int *pI, N;

printf ("Размер массива > ");

scanf ("%d", &N);

pI = new int [N];

if ( pI == NULL ) {

printf("Не удалось выделить память");

return;

   }

for (i = 0; i < N; i ++ ) {

printf ("\nA[%d] > ", i+1);

scanf ("%d", &pI[i]);

   }

...          // здесь сортировка и вывод на экран

delete pI;

}



2009-12-19 • Просмотров [ 2670 ]