基础的sizeof()

sizeof() 是什么?

sizeof是C/C++中的一个操作符(operator)

其返回值类型为size_t,在头文件stddef.h中定义。这是一个依赖于编译系统的值,一般定义为

typedef unsigned int size_t;

sizeof()是干嘛用的?

简单的说其作用就是返回一个对象或者类型所占的内存字节数。

 

如何使用sizeof()?

sizeof() 有三种语法格式:

  • sizeof(对象)
  • sizeof(类型)
  • sizeof 对象   (不建议使用该种方法)

实际上,sizeof计算对象的大小也是转换成对对象类型的计算,也就是说,同种类型的不同对象其sizeof值都是一致的。这里,对象可以进一步延伸至表达式,即sizeof可以对一个表达式求值,编译器根据表达式的最终结果类型来确定大小,一般不会对表达式进行计算。

sizeof也可以对一个函数调用求值,其结果是函数返回类型的大小,函数并不会被调用。

好了,重点来了:

指针变量的sizeof()  

指针记录了另一个对象的地址,所以指针变量的sizeof值与指针所指的对象没有任何关系,正是由于所有的指针变量所占内存大小相等,所以MFC消息处理函数使用两个参数WPARAM、LPARAM就能传递各种复杂的消息结构(使用指向结构体的指针)。

数组的sizeof()

数组的sizeof值等于数组所占用的内存字节数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值