c++ - 如何确定已分配缓冲区的大小

标签 c++ memory allocation

我用new分配了一个buffer,如下:

    BYTE *p;

    p = new BYTE[20];

如果我不存储分配缓冲区的大小,如何仅通过 p 确定缓冲区大小?

最佳答案

你不能,因为 p 只是指向分配的内存块的指针。您必须记录分配了多少内存。

关于c++ - 如何确定已分配缓冲区的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27374752/

相关文章:

python - 为什么我的 python 进程占用了这么多内存?

Java未请求的内存分配

c - 函数内二维数组的动态分配(使用指针返回分配对象的地址)

c# - 将包含 int 和 int[] 的结构从 C# 编码到 C++

c++ - 在 C++ 中通过析构函数销毁动态数组的 vector

c++ - 确保使用双重比较和交换指令,用于无锁堆栈?

Linux 脚本 : Saving Memory print into text file via Crontab always blank

r - 使用具有 gmp 和机器限制的大整数

iphone - iPhone中的内存分配

c++ - Visual Studio 无法识别我的网络摄像头激光测距仪代码的 MFC 库