您的位置:首页 > 职场人生

面试宝典

2013-08-13 21:57 204 查看
struct S
{
int i;
int *p;
};

main()
{
S s;
int *p = &s.i;
p[0] = 4; //把i的值改为4
p[1] = 3;//这个地方越界写了,把保存在int i下面的指针int* p的值给写为3了
s.p = p; //又把这个指针s中指针p的值赋为上面int i的地址
s.p[1] = 1;//i下面的指针指向i的地址,现在把自身修改为1了
s.p[0] = 2;//再访问内容为1的指针所指空间就出错了,这行崩溃了
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: