lec7
.pdfRealloc.
#include <stdio.h> #include <stdlib.h> int main()
{ int i, number, counter=0; int * pArray = NULL; printf("Input integer values:"); while(1)
¨
{ printf("number="); scanf("%d" ,&number); if (number == 0) break;
counter++;
pArray=(int *)realloc(pArray,counter*sizeof(int)); pArray[counter-1]=number; }
printf("Result: "); for(i=counter-1; i>=0; i–)
¨
printf("%d ",pArray[i]); free (pArray);}
Calloc.
#include <stdio.h> #include <stdlib.h> int main()
{int i, number, counter=0; int * oldArray, * newArray; printf("Input integer values:"); while(1)
{ printf("number=");
¨
scanf("%d",&number); if (number == 0) break; counter++;
newArray=(int *)calloc(counter,sizeof(int));
Calloc.
for(i=0;i<counter-1;i++) newArray[i]=oldArray[i]; newArray[counter-1]=number; free (oldArray); oldArray=newArray;} printf("Result: "); for(i=counter-1;i>=0;i–)
¨
printf("%d ",newArray[i]); free (oldArray);}
Массивы указателей.
Примеры.
Пример программы.
Пример программы.
Пример программы.
Результаты работы программы.
Массивы до упорядочения.