u32 iterations = 5;
u32* ecx = (u32*)malloc(sizeof(u32) * iterations);
memset(ecx, 0xBAADF00D, sizeof(u32) * iterations);
printf("%.8X\n", ecx[0]);
ecx[0] = 0xBAADF00D;
printf("%.8X\n", ecx[0]);
free(ecx);
很简单,为什么我的输出如下?
0D0D0D0D
BAADF00D
ps: u32 是 unsigned int 的简单 typedef
编辑:
- 使用 gcc 4.3.4 编译
- 包含 string.h