C++ sizeof学习

https://www.cnblogs.com/huolong-blog/p/7587711.html

1.定义与用法

sizeof是一个操作符(operator)。

其作用是返回一个对象类型所占的内存字节数。

 

sizeof有三种语法形式:

1)  sizeof (object);  //sizeof (对象)

2)  sizeof object;   //sizeof 对象

3)  sizeof (type_name);  //sizeof (类型)

对象可以是各种类型的变量,以及表达式(一般sizeof不会对表达式进行计算)。

sizeof对对象求内存大小,最终都是转换为对对象的数据类型进行求值

sizeof (表达式); //值为表达式的最终结果的数据类型的大小

int i;
cout<<sizeof(i)<<" "<<sizeof i<<endl;

#输出:
4 4

//也可以不加括号

2.数组的sizeof

    char a[10];
    cout<<sizeof(*a)<<" "<<sizeof(a);

输出:1 10

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

3.指针的sizeof

    char *b="woaini";
    cout<<sizeof(b);

#输出:8

在32位计算机中,一个指针变量的返回值必定是4。那么在64位计算机中,返回的值为8。

    int *b={1,2,3};
    cout<<sizeof(b);

#会报错,输出8,那怎么定义指向数组的指针?
    int **b;
    cout<<sizeof(b);
#输出:8

 

4.其他的sizeof

其他的包括函数的、联合体的、结构体的,在上面的文章中都有讲到,我目前用不到先不进行学习。

posted @ 2020-10-27 17:36  lypbendlf  阅读(93)  评论(0编辑  收藏  举报