摘要:
前段时间将一个项目由vc6.0转为vs2005,发现了有些对象的地址奇怪变化的问题,细查之下发现出现了#pragma pack乱用的问题,在恢复内存对齐使用了#pragma pack(pop, 1)的错误,估计程序设计者最初没有注意到这个问题,不过很奇怪的是vc6.0却没有出现这个问题,总结一下#pragma pack使用的规范,避免以后乱用。#pragma pack作用:指定结构体、联合以及类成员的packing alignment;语法:#pragmapack( [show] | [push | pop] [, identifier], n )说明:1, pack提供数据声明级别的控制,对 阅读全文