Q:
Can I increase the size of a dynamically allocated array? < Yes / No> if yes, how?
Answer
Yes, using the realloc() function as shown below:
main()
{
int *p;
p = ( int *) malloc (20) ;
t = p;
t = (int *) realloc ( p, 40);
if ( t == NULL )
Printf (" Cannot reallocate, leaves previous allocated region unchanged ");
else
{
if ( p ==t )
; / * the array expanded at the same region */
else
{
free ( p ); / * deallocate the original array */
p = t; /* set p to newly allocated region */
}
}
}
View answer
Workspace
Report Error
Discuss