今天写插入排序用sizeof函数获取数组大小的时候发现与想的有点不同。
sizeof用于判断数据类型的长度
int main()
{
int a[]={1,2,3,4,5,6};
int *b=new int[10];
cout << sizeof(a) << endl;
cout << sizeof(b) << endl;
return 0;
}
上面的代码输出结果为
一个int型占4个字节,所以先输出24
而第二行却输出4,这是因为b是一个指针类型,用于存放地址,它等于计算机内部地址总线的宽度,所以为4
如果想要获取指针指向区域的大小的话需要自己用一个变量来储存