sizeof操作符

定义

sizeof操作符的作用是返回一个对象或类型名的长度,返回值的类型为size_t,长度的单位是字节。sizeof表达式的结果是编译时常量,该操作符有一下三种语法形式:

sizeof(type name);
sizeof(expr);
sizeof expr;

理解

将sizeof用于expo时,并没有计算表达式expr的值。
使用sizeof所得的结果部分的依赖所涉及的类型。
对char类型或值为char类型的表达式做sizeof操作结果为1。
对引用类型做sizeof操作将返回存放此引用类型对象所需的内存空间大小。
对指针做sizeof操作将返回存放指针所需的内存大小。
对数组做sizeof操作等效于将对其元素类型做sizeof操作的结果乘上数组元素的个数。

#include <iostream>
#include <string>
using namespace std;

int main(int argc, const char * argv[]) {

    char ch = 'B';
    int i = 100;
    int &ref = i;
    int ar[10];
    string str = "string";

    cout << sizeof(ch)  << endl << sizeof(char)   << endl;
    cout << sizeof(ref) << endl << sizeof(i)      << endl;
    cout << sizeof(ar)  << endl << sizeof(ar[10]) << endl;
    cout << sizeof(long)<< endl << sizeof(short)  << endl;
    cout << sizeof(str) << endl << sizeof("strin")<< endl;

    return 0;
}

控制台输出:

1
1
4
4
40
4
8
2
24
6
Program ended with exit code: 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值