社区
C++ 语言
帖子详情
怎么用"typedef"定义bit field类型
rogersun
2004-02-06 02:12:48
因为C++语句
unsigned a:4;
表示a是一个4个bit的变量.
我想用DIGIT来表示这一类型的话,就写成:
typedef unsigned DIGIT:4;
可是linux下的g++编译通不过,试了
typedef unsigned:4 DIGIT;
也不行,请教各位该怎么办?
...全文
74
6
打赏
收藏
怎么用"typedef"定义bit field类型
因为C++语句 unsigned a:4; 表示a是一个4个bit的变量. 我想用DIGIT来表示这一类型的话,就写成: typedef unsigned DIGIT:4; 可是linux下的g++编译通不过,试了 typedef unsigned:4 DIGIT; 也不行,请教各位该怎么办?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
使用
bit
-
field
和union巧妙
定义
/存取具有特定结构的数据
在实际应用中,例如
定义
报文头,或
定义
设备的
定义
位域(
bit
field
)时要注意数据
类型
定义
位域(
bit
field
)时要注意数据
类型
在EEPROM中保存历史告警时,设计为告警码4个字节,开始时间4个字节,结束时间4个字节,共计12个 字节。 // 告警时间
typedef
struct stAlarmTime { UINT16 Year : 6; // 从2000年开始算,可表示2000~2063年 UINT16 M
C++ 中的位域(
bit
field
)
定义
方式
但是需要注意的是,位域只能用于整型数据
类型
,而且每个位域变量的取值范围必须是固定的。位域(
bit
field
)是 C++ 中一种特殊的数据
类型
,它可以用来
定义
一个或多个二进制位的变量。在位域中,每个二进制位都有自己的存储空间,可以单独进行读写操作。一个无符号整型变量,占用 4 个二进制位。一个无符号整型变量,占用 4 个二进制位。一个无符号整型变量,占用 1 个二进制位。一个无符号整型变量,占用 1 个二进制位。一个无符号整型变量,占用 1 个二进制位。一个无符号整型变量,占用 1 个二进制位。
转:关于C语言的位域(
bit
field
)
原文地址:http://www.cppblog.com/ichenq/archive/2009/07/12/89888.aspx 基本知识见这里和这里, 已经说得很清楚,不过是洋文,简单归纳一下:(1),
定义
语法:
类型
标志符(optional) : 常量表达式(2),
类型
必须为unsigned, signed int 或者int, 常量表达式的值不能为负且不能超过
类型
能够表示
c语言位域的存放顺序,关于C语言的位域(
bit
field
)
基本知识见和, 已经说得很清楚,不过是洋文,简单归纳一下:(1),
定义
语法:
类型
标志符(optional) : 常量表达式(2),
类型
必须为unsigned, signed int 或者int, 常量表达式的值不能为负且不能超过
类型
能够表示的范围;(3), 不允许出现位域数组,指向位域的指针(&运算符)和以位域为返回值的函数;(4), 没有标志符的位域不能被引用,且长度为0时编译器保...
C++ 语言
64,648
社区成员
250,503
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章