c++ sizeof指针与数组的关系

avatar
作者
筋斗云
阅读量:0

在 C++ 中,sizeof 是一个运算符,用于计算数据类型或对象所占用的内存大小(以字节为单位)。对于指针和数组,sizeof 的作用略有不同。

  1. 指针:sizeof 用于计算指针变量所占用的内存大小。无论指针指向何种类型的数据,指针本身所占用的内存大小是固定的。在 32 位系统中,指针通常占用 4 字节(32 位),而在 64 位系统中,指针通常占用 8 字节(64 位)。

示例:

int *ptr; std::cout << "Size of ptr: " << sizeof(ptr) << " byte(s)" << std::endl; 
  1. 数组:sizeof 用于计算数组所占用的内存大小。数组所占用的内存大小等于数组中所有元素所占用的内存大小之和。需要注意的是,sizeof 计算的是整个数组的大小,而不是数组中某个元素的大小。

示例:

int arr[5] = {1, 2, 3, 4, 5}; std::cout << "Size of arr: " << sizeof(arr) << " byte(s)" << std::endl; 

总结:sizeof 指针计算的是指针本身的大小,而 sizeof 数组计算的是数组本身所占用的内存大小。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!