new一个结构,结构里的数组是堆上还是在栈上分配?

何日人再来 2012-06-14 05:14:19
//定义结构
typedef struct _dd
{
int a;
char buf[256];
}dd;

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

那pdata->buf是在堆上还是在栈分配的内存呢?
...全文
417 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
何日人再来 2012-06-14
  • 打赏
  • 举报
回复
想想其实也就清楚了,谢谢大家
赵4老师 2012-06-14
  • 打赏
  • 举报
回复
堆上
七擒关羽 2012-06-14
  • 打赏
  • 举报
回复
你需要关注的不是数组,是new,new出来的是在堆上,就是在堆上申请了结构体大小的内存
恨天低 2012-06-14
  • 打赏
  • 举报
回复
pdata变量分配在栈上,new在堆在开辟内存,并把内存的首地址赋值给pdata。
自信男孩 2012-06-14
  • 打赏
  • 举报
回复
是在堆上申请的。并且把这些空间的初始地址复制给pdata
ziqingyexue 2012-06-14
  • 打赏
  • 举报
回复
怎么整体都在堆上??没太明白新手 帮忙讲一下呗
justkk 2012-06-14
  • 打赏
  • 举报
回复
整体都在堆上

64,685

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧