Listing 2 Error by Writing a Freed Pointer (Item's value may have changed.)

#include <stdlib.h>
#include <assert.h>

void    main() {
int     *ip;

       /* allocate an integer */
       ip = malloc(sizeof(int));
       assert(ip != NULL);

       /* initialize the integer */
       (*ip) = 1;

       /* deallocate the integer */
       free(ip);

       /* update the deallocated integer */
       (*ip)++;
       printf("*ip == %d\n",*ip);
}
/* End of File */