AnT*_*AnT 11
是的,它可以."访问冲突"("分段错误"等)是当进程尝试访问(甚至只是为了读取)操作系统已知为"空","释放"或"已释放"的内存时,OS /硬件通常生成的响应因其他原因无法进入.这里的关键时刻是OS /硬件必须知道内存是空闲的.C标准库的内存管理功能不一定会将'free'd内存返回给OS.他们可能(并将会)保留它以供将来分配.因此,在某些情况下,访问'free'd内存不会导致"访问冲突",因为从操作系统/硬件的角度来看,这个内存还没有被真正释放.但是,在某些时候,标准库可能会决定将收集的空闲内存返回给操作系统,之后尝试访问该内存通常会导致"访问冲突".
你问"可以"而不是"会",所以你的回答是肯定的.指向不属于您的程序的内存是未定义的行为,因此可能发生任何事情.
会吗?要看.这是特定于操作系统的.你可能能够逃脱它,但显然你不能依赖它.尝试取消引用它可能会导致异常,因为操作系统已经为自己的用途回收了内存.(再次,OS特定).