C/C++语言sizeof相关计算
来源:互联网 发布:java魔法门2手机版攻略 编辑:程序博客网 时间:2024/06/15 03:56
C语言中的sizeof操作符
注:本博客中的结果均是指运行在codeBlock16.01+window10上,sizeof显示的结果均是以字节为单位的。
- 对数据类型使用sizeof
sizeof(long long) -> 8
sizeof(int) -> 4
sizeof(char) -> 1
sizeof(string) -> 4
sizeof(float) -> 4
sizeof(double) -> 8 - 对数据类型指针使用sizeof
sizeof(char *) -> 4
sizeof(int *) -> 4
sizeof(long long *) -> 4
sizeof(float *) -> 4
sizeof(double *) -> 4
sizeof(string *) -> 4 - 对数组使用sizeof
int arr_a[10] ,sizeof(arr_a) -> 40
char arr_b[10],sizeof(arr_b) -> 10
… 对类class使用sizeof
class A1
{
A();
~A(); //有无构造函数或者是其他复杂的构造函数结果都是 1 !
static int x; //可以是int、long long、double、char…,注释掉这一行结果也是一样的。就是说static并没有增加类的存储空间
};
class A2
{
A();
~A();
int x;
};
class A3
{
A();
~A();
double x;
};
class A4
{
A();
~A();
int x; //或者是char、double、string、long long(好像是有什么字节对齐的约束)
double y;
};
sizeof(class A1) -> 1;sizeof(A2) -> 4;sizeof(A3) -> 8;sizeof(A4) -> 16以上仅仅是简单的对class使用sizeof的结果,有关虚类、虚继承的参考链接(在此对博主的好心分享表示感谢):http://blog.sina.com.cn/s/blog_728161840100u2ib.html
http://blog.csdn.net/hairetz/article/details/4171769关于字节对齐的内容参考(在此对博主一并表示感谢):http://blog.csdn.net/hairetz/article/details/4084088
- 对函数使用sizeof—取决于函数的返回类型
void fun0(int x,int y)
{
int z = x+y;
}
char fun1(int x,int y)
{
return x+y;
}
int fun2(int x,int y)
{
return x+y;
}
double fun3(int x,int y)
{
return x+y;
}
long long fun4(int x,int y)
{
return x+y;
}
string fun5(int x,int y)
{
return “1+2”;
}
sizeof(fun0(1,2)) -> 1, sizeof(fun1(1,2)) -> 1 , sizeof(fun2(1,2)) -> 4 , sizeof(fun3(1,2)) -> 8 , sizeof(fun4(1,2)) -> 8 , sizeof(fun5(1,2)) -> 4.
- C/C++语言sizeof相关计算
- C语言中的sizeof
- C语言中的sizeof
- sizeof C 语言
- C语言:sizeof
- C语言--sizeof
- C语言函数sizeof
- C语言关键---sizeof
- C语言详解sizeof
- c语言详解sizeof
- C语言 sizeof使用
- C语言详解sizeof
- c语言详解sizeof
- c语言详解sizeof
- sizeof C 语言
- sizeof解析C语言
- C语言关键字sizeof
- c语言sizeof
- vs2015 的key
- Ubuntu16.04 怎样下载deb的源码包
- react native组件封装及传值
- eclipse创建maven依赖的web3.0项目
- 如何将自己写的verilog模块封装成IP核(二)
- C/C++语言sizeof相关计算
- mybatis,mysql,datasource,dpcb连接池的关系
- PopupWindow弹窗
- mysql 一次更新单个表的多个字段
- win svn安装服务端
- Unity脚本-Rotate旋转相关知识总结
- 小程序开发系列之基础部分-账号注册
- kafka和其他消息队列的对比
- LeetCode (Combination Sum)