Listing 2. mytest00.c Example Program

#include <stdlib.h>
#include <stdio.h>
int
main (int argc, char **argv)
{
        char    *msg = malloc (4);
         // Allocate 4 bytes
        strcpy (msg, "hello Linux users");
         // Overflow the allocated memory
        printf ("%s\n", msg);
        free (msg);
         // Free the allocated memory
        strcpy (msg, "hello again");
         // Write to freed memory
        printf ("%s\n", msg);
        free (msg);
         // Free the freed memory
        realloc (msg, 2);
         // Reallocate freed memory
        strcpy (msg, "hello there");
         // Writing to erroneous memory
        printf ("%s\n", msg);
        return 0;
}