最近到调程序,调到最后发现是定义的一个结构体变量,分配的地址是奇地址来的...
程序如下:
typedef struct _CHECK_CLEAR_STATUS_RESPONSE
{
char status;
char bmClear;
}CHECK_CLEAR_STATUS_RESPONSE, *pCHECK_CLEAR_STATUS_RESPONSE;
typedef struct _INITIATE_CLEAR_RESPONSE
{
char status;
}INITIATE_CLEAR_RESPONSE, *pINITIATE_CLEAR_RESPONSE;
INITIATE_CLEAR_RESPONSE InitiateClearRes;
CHECK_CLEAR_STATUS_RESPONSE ClearStatusRes;
int main( void )
{
/* Begin adding your custom code here */
return 0;
}
编译下载后,用全局变量观察窗口看到如下结果:ClearStatusRes分配的地址刚好对在奇地址上!
请问下这是为什么呢?工程是默认建立的,没有开优化什么的。
程序: