On Sat, 18 Jun 2011, Nicolas Pitre wrote: > int main(int argc, char * argv[]) > { > char buf[8]; > void *v = &buf[1]; > unsigned int *p = (unsigned int *)v; > > strcpy(buf, "abcdefg"); > > printf("*%p = 0x%08x\n", p, *p); > > return 0; > } Obviously, there is a buffer overflow here, so the buf array should be enlarged. Nicolas