日期:2014-05-16  浏览次数:20792 次

C语言,访问无效的线性地址,操作系统不报错?

#include <stdio.h>
#include <stdlib.h>

int main()
{
    void *p = malloc(4);

    p += 8192;
    *(int *)p = 100;
    
    return 0;
}

上面这个程序,访问了无效的线性地址,OS不报错吗?

------解决方案--------------------
越界访问的行为是不确定的。