位域
来源:互联网 发布:rxjava gson解析数组 编辑:程序博客网 时间:2024/06/13 23:50
位域的使用和结构成员的使用相同,其一般形式为: 位域 变量名·位域名 位域允许用各种格式输出。
例如:
struct
{
char a : 3;
char b : 3;
char c : 2;
} ;
这个 结构体所占空间为一个字节,8位。节省了空间。
位域的一些使用:
1.位域变量仅限整型
2.位域变量的长度不能够超过其本身类型的长度
3.如果某一位域要从一个新的类型对齐处开始 可以在前面加一个长度为0的匿名位域 unsigned :0
4.匿名位域长度不为0时 只起占位的作用
5.一个位域必须容纳在同一个其类型对齐长度内
例如:
struct s1
{
int i: 8;
int j: 4;
int a: 3;
double b;
};
struct s2
{
int i: 8;
int j: 4;
double b;
int a:3;
};
printf("sizeof(s1)= %d\n", sizeof(s1));
printf("sizeof(s2)= %d\n", sizeof(s2));
result: 16, 24
第一个结构体中,i,j,a共占15个位,不足8个字节,按double 8字节对齐,共16字节
阅读全文
0 0
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- 位域
- this,call,apply
- N
- 【快速幂公式】“盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛-添加好友
- UVA 140 Bandwidth
- css(cascading stylesheet language)的总结
- 位域
- 安卓enableNetwork连接不上指定wifi或连接wifi后断开,连接到其他wifi的原因和解决方法
- git 使用工具教程
- linux常用命令
- sql语句应该考虑哪些安全性?
- Android 利用JNI实现串口通信
- 获取跟控制器rootViewController
- 变量初始化顺序
- C语言中的实型常量