在C/C++
如果使用了如果用free
分配了一块大小为x bytes
的空间的话, 据说那块空间其实不止x bytes
, 还会有多出的一部分用来保存分配空间的大小等信息, 这也是为什么free
的时候只需要传一个指针进去进行了, 我想知道的是, 那如果free
的时候我不传起点这个头指针进去, 而是把空间中任意位置的某个指针传进去, 这样的话会发生什么呢?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
题主是这个意思吗?
会导致未定义行为。http://www.cplusplus.com/refe...
会报错
pointer being freed was not allocated
,不让你干这种非法的事,程序不会那么傻的会炸掉……具体的炸法取决于操作系统的实现,反正都是炸,LZ有兴趣的话可以去你的操作系统下跑一跑: