首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于sizeof的有关问题,愿大家帮忙解决一下

2012-02-09 
关于sizeof的问题,愿大家帮忙解决一下请大家看以下程序:C/C++ code#include iostreamusing std::coutus

关于sizeof的问题,愿大家帮忙解决一下
请大家看以下程序:

C/C++ code
#include <iostream>using std::cout;using std::endl;int main(){    int *a=new int[10];        cout<<sizeof (*a)<<endl;    return 0;}

我的目的是想输出堆里面的分配的空间大小,可此程序始终输出4 ?要怎么写才可以输出我希望的40呢?(假如int占4字节)

[解决办法]
没有办法

[解决办法]
你让他显示的是指针的内存大小,显然就是4
把他们叠加就是40了
[解决办法]
不要总想着用个系统函数“查询”长度,既然是你分配的,你必然知道其长度,那么弄个变量记住长度

[解决办法]
此要求不能满足...
指针只有含指向的地址
占四个字节
int *a=new int[10];
int *b = new int[20];
a和b的数据类型都一样,不应该在指向的数据有多少上有差别
[解决办法]
C/C++ code
#include <iostream>using std::cout;using std::endl;int main(){    int size=10;    int *a=new int[size];        cout<<sizeof (*a)*10<<endl;    return 0;}
[解决办法]
http://blog.csdn.net/arong1234/archive/2008/03/23/2210462.aspx
[解决办法]
知道10个元素还要sizeof干吗?
探讨
C/C++ code
#include <iostream>
using std::cout;
using std::endl;
int main()
{
int size=10;
int *a=new int[size];
cout<<sizeof (*a)*10<<endl;
return 0;
}

热点排行