首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

有些关于C++变量地址的疑问

2013-07-08 
有点关于C++变量地址的疑问本帖最后由 u010106341 于 2013-07-06 16:32:55 编辑int main( ) {int one 1

有点关于C++变量地址的疑问
本帖最后由 u010106341 于 2013-07-06 16:32:55 编辑


int main( ) {
int one = 1;
int two = 2;
int three = 3;
int four = 4;
int* pint1 = &one;
int* pint2 = &two;
int* pint3 = &three;
int* pint4 = &four;

cout << *(pint3+3) << endl;
return 0;
}

64位系统,8位内存对齐,我想问一下为什么one跟two的距离是3,而不是2?
[解决办法]
局部变量的地址没有规律, 不一定按顺序来的. VC 还会在变量中间插入 0xcc 来检测越界访问.
要研究对齐, 把它定义成结构体才有意义.

热点排行