能力值:
( LV12,RANK:200 )
|
-
-
2 楼
在c++中new出来的是数组,无法再得到new出来的元素size, 和使用的编译器, IDE无关
new出来的size 需要自己存起来.
e.g.
#include "stdafx.h"
#include <Windows.h>
#include <tchar.h>
typedef struct _tag_For_New
{
char * pcBuf;
size_t nSizeBuf;
}TAG_FOR_NEW, *PTAG_FOR_NEW;
int main()
{
size_t nArray = 0x100; ///< 变量,数组要开辟的数组大小
TAG_FOR_NEW s1;
s1.pcBuf = new char[nArray];
if (NULL != s1.pcBuf)
s1.nSizeBuf = nArray;
/// use s1 to do something
getwchar();
return S_OK;
}
|
能力值:
( LV2,RANK:140 )
|
-
-
3 楼
用_msize可以,但是不推荐使用
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
new出来的在堆空间 等同于你malloc出来的 除了你自己保存大小 没办法获取大小
|
能力值:
( LV12,RANK:340 )
|
-
-
5 楼
百度了一下,这个函数不太准确
|
|
|