C++ 涉及到位域的sizeof
来源:互联网 发布:如何定义一个新数组 编辑:程序博客网 时间:2024/05/20 07:54
位域的几项准则:
1:如果相邻位域字段的类型相同,且其位域宽度之和小于类型的sizeof大小,则后面的位域将紧邻前一个字段存储,直到不能容纳为止
2:如果相邻位域字段的类型相同,且其位域宽度之和大于类型的sizeof大小,则后面的位域将从新的存储单元开始,且其偏移量为其类型大小的整数倍
3:如果相邻位域字段的类型不相同,则各编译器的实现方式不同,VC6采取不压缩的方式,DEV_C++采取压缩的方式
4:如果位域字段之间穿插着非位域字段,则不进行压缩
5:整个结构体的大小为最宽基本类型成员大小的整数倍
样例:
#include <iostream>using namespace std;int main(int argc, char** argv){struct A {int a:4;int b:3;char c;};struct B {int a:20;int b:20;char c;};struct C {int a:2;char b:3;int c;};cout<<sizeof(A)<<endl;cout<<sizeof(B)<<endl;cout<<sizeof(C)<<endl;cin.get();return 0;}
分析一下此代码,基本上理解是没问题了~
1 0
- C++ 涉及到位域的sizeof
- C++ 涉及到位域的sizeof
- C++ sizeof 及 涉及的内存对齐
- “协同智能计算系统”涉及的三个不等式,有两个仅用字即可表达,一个需用二字组才可表达到位。
- C的题-sizeof
- c的sizeof
- sizeof详解 - 很好的sizeof资料 C
- sizeof详解 - 很好的sizeof资料 C
- [C++]面试可能涉及的问题
- threadLocal的比喻很到位
- sizeof和strlen的区别(其中涉及NUL的讲解)
- C++:类的大小(sizeof)
- C 中 sizeof的用法
- 关于c语言的sizeof
- C语言 sizeof的用法
- C中sizeof的用法
- c++_类的sizeof
- 理解c语言的sizeof
- 解决html设置height:100%无效的情况
- Echarts柱状图,饼状图,折线图案例
- JS arguments 使用
- 理解lua的闭包
- P1244 青蛙过河
- C++ 涉及到位域的sizeof
- bzoj 4347: [POI2016]Nim z utrudnieniem 博弈论+动态规划
- Linux下使用Qt Creator开发OpenCV项目-2.测试开发环境
- tomcat 入门
- 【IMWeb训练营作业】用Vue做简单的自定义select
- C#学习日记2017-04-22 NPOI用法小结(未完待续)
- React-Native中一些组件的用法(一)
- leetcode-332-Reconstruct Itinerary
- ajax关于对象传后台问题