引用注明>> 【作者:张佩】【原文:www.YiiYee.cn/blog】
国庆假期我看WDK 8.1中的sample项目,遇一极有趣问题,和基本的指针使用有关,特缀文于此。请看下面是WDK8.1 msplot项目中的一段代码(经我简化过),三行而已,作一个减法运算。注释中的例值,其期望结果应是0x10,但意外得到一个溢出后的大值:
/* struct _PLOTGPC */
/* { */
/* //... */
/* LPVOID pData; */
/* }; */
LPBYTE *pByte = pPlotGPC->pData; // pByte:0x0040fa30
pByte -= (ULONG_PTR)pPlotGPC; // pPlotGPC:0x0040fa20
pPlotGPC->pData = pByte; // 结果:0xff3d11b0
6,422 total views, 1 views today