读书人

为什么debug下一个int要用12个字节?

发布时间: 2012-05-20 16:03:12 作者: rapoo

为什么debug下,一个int要用12个字节?
为什么debug下,一个int栈变量要用12个字节?
空余的8个自己里面是cc,不知道编译器是做何用。麻烦解释清楚一点。


int _tmain(int argc, _TCHAR* argv[])
{
int a = 1;
int b = 2;
int c = 3;
printf("&a = 0x%08X\n", &a);
printf("&b = 0x%08X\n", &b);
printf("&c = 0x%08X\n", &c);
return 0;
}

输出:
&a = 0x0029F814
&b = 0x0029F808
&c = 0x0029F7FC

[解决办法]
调试模式下,VC 编译器对每一个变量设置的前后标志。
这样如果你的越界了。编译器就可以告诉你。

读书人网 >C++

热点推荐