搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ c中冒号的作用?help
标题:
c中冒号的作用?help
只看楼主
kinglence
等 级:
新手上路
帖 子:3
专家分:0
注 册:2009-9-3
结帖率:
100%
楼主
已结贴
√
问题点数:5 回复次数:4
c中冒号的作用?help
int type:1; int reserved:31;
这两个冒号是什么意思啊???
搜索更多相关主题的帖子:
冒号
help
2009-09-04 23:46
养下就很帅
等 级:
论坛游民
帖 子:32
专家分:50
注 册:2007-8-3
第
2
楼
得分:0
这两句在c语言中是类型定义 int 后跟变量名 ~ 标识符的命名规则里包括:吗
2009-09-04 23:55
prankmoon
等 级:
蝙蝠侠
帖 子:161
专家分:921
注 册:2009-7-21
第
3
楼
得分:5
lz这样的代码经常在结构里面用到,冒号后面的数字表明的是所占位宽,主要是为了节省存储空间。比如:
struct message_header
{
unsigned char aa :1;
unsigned char bb :1;
unsigned char cc :1;
unsigned char dd :1;
unsigned char ee :4;
};
这样一来,整个结构就只需要1个字节,也就是8位(1 + 1 + 1 + 1 + 4)就够了。这样在诸如设置掩码之类的地方特别方便。
.
像你的那段代码就只需要1个32位(1 + 31)的int型存储空间就够了,而不需要2个32位的int空间。
[
本帖最后由 prankmoon 于 2009-9-5 00:24 编辑
]
2009-09-05 00:22
xtulearner
等 级:
新手上路
帖 子:5
专家分:0
注 册:2009-5-19
第
4
楼
得分:0
结构体能这样定义吗?联合体才这样呀。
今朝有酒今朝醉,哪管明日乐与悲。
2009-09-05 18:31
diaoxiong007
等 级:
新手上路
帖 子:4
专家分:6
注 册:2009-9-5
第
5
楼
得分:0
其实是位段
c语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员称为“位段”或“位域”,功能是节省空间,前提是用在结构体中;
例 struct packed_data
{
unsigned a:2;
unsigned b:6;
unsigned c:4;
unsigned d:4;
int i;
}data;
在位段中":"的作用就是接位数。
2009-09-05 20:42
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-284833-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.665830 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved