char wolf[]="Like a wolf";
char *p = &wolf[1];
unsigned long l = *(unsigned long *)p;此实例试图从一个并不能指向被4或8整除的地址上载入一个32位或64位的unsigned long 类型的数据可能会引起错误,在一些平台上访问没有对齐的数据会陷入一种错误
本文探讨了内存对齐的问题,特别是在尝试从未正确对齐的地址加载 unsigned long 类型数据时可能遇到的情况。这种不当的内存访问可能导致程序崩溃或运行异常。
char wolf[]="Like a wolf";
char *p = &wolf[1];
unsigned long l = *(unsigned long *)p;
4223
824

被折叠的 条评论
为什么被折叠?