读书人

new一个结构结构里的数组是堆上还是

发布时间: 2012-06-16 20:34:32 作者: rapoo

new一个结构,结构里的数组是堆上还是在栈上分配?
//定义结构
typedef struct _dd
{
int a;
char buf[256];
}dd;

//分配内存
dd* pdata=new dd;

那pdata->buf是在堆上还是在栈分配的内存呢?

[解决办法]
整体都在堆上
[解决办法]
怎么整体都在堆上??没太明白新手 帮忙讲一下呗
[解决办法]
是在堆上申请的。并且把这些空间的初始地址复制给pdata
[解决办法]
pdata变量分配在栈上,new在堆在开辟内存,并把内存的首地址赋值给pdata。
[解决办法]
你需要关注的不是数组,是new,new出来的是在堆上,就是在堆上申请了结构体大小的内存
[解决办法]
堆上

读书人网 >C++

热点推荐