免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12345下一页
最近访问板块 发新帖
查看: 5147 | 回复: 44
打印 上一主题 下一主题

内存分配,高手,版主请入 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-07-21 21:17 |只看该作者 |倒序浏览
char* p= new char[0];

p指向的内存多大?一个字节?

class tst
{
   public:
      tst(){}
      ~tst(){}

private:
       int aa;
};

tst* pp=new tst[0];

pp 指向的内存是多大?一个字节?

C++官方说明是什么?为何不返回空呢?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-07-21 21:28 |只看该作者

内存分配,高手,版主请入

p是指针.~~ 你的机器是多少位机 它的大小就是多少位机/8
比如32位机 p的大小就是32/8. 你也可以sizeof(p)计算.

论坛徽章:
0
3 [报告]
发表于 2005-07-21 21:31 |只看该作者

内存分配,高手,版主请入

p=4
pp=4

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
4 [报告]
发表于 2005-07-21 21:32 |只看该作者

内存分配,高手,版主请入

原帖由 "xiaoyuer323" 发表:
p=4
pp=4

64位机就不是这样.

论坛徽章:
0
5 [报告]
发表于 2005-07-21 21:35 |只看该作者

内存分配,高手,版主请入

不是指指针多大,而是问指针指向的分给的内存块多大,希望有权威的说明

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2005-07-21 21:39 |只看该作者

内存分配,高手,版主请入

p是多大?一个字节?


我回答的就是这个问题.
看来楼主还要再学学语文.

论坛徽章:
0
7 [报告]
发表于 2005-07-21 21:47 |只看该作者

内存分配,高手,版主请入

也许是,不过你的回答是错的,p 或pp指向的由os分配的内存块不可能是4(32位机),有可能是1个字节

也许是这样的:

void* operator new(size_t size)
{
      if(size==0)
        {
             void* p==::malloc(1);
             return p;
        }
    //other code.
}

我想求证一下

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2005-07-21 21:49 |只看该作者

内存分配,高手,版主请入

>;>;p是多大?

楼主简直就是浑人. p是什么? p是指针? 我说的那里错了~?
建议楼主先去补习语文. 中国话都不会说.

论坛徽章:
0
9 [报告]
发表于 2005-07-21 21:53 |只看该作者

内存分配,高手,版主请入

你不要急啊,我问的不是p 或pp本身的大小,指针大小当然是4个字节(32位机)啦,我问的是指针指向的内存快的大小。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
10 [报告]
发表于 2005-07-21 21:54 |只看该作者

内存分配,高手,版主请入

我从来不着急.
因为这是你自己遇到的问题. 把你解释清楚了 有我什么好处?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP