IMO is shorthand for "In My Opinion".
Your example isn't quite right;
Try
Code:
#include <string.h>
#include <stdlib.h>
int main()
{
void *memory;
char *char_memory;
double *object;
memory = malloc(sizeof(double));
char_memory = (char *)memory; /* This cast is optional in C but mandatory in C++ */
object= (double *)char_memory; /* This cast is mandatory in this example */
strcpy(char_memory, "Hello"); /* Would result in undefined behaviour if sizeof(double) <= 6 */
*object = 2.0;
(*((double *)char_memory)) = 2.0; /* Same effect as preceding line */
(*((double *)memory)) = 2.0; /* Same effect as preceding line */
}