数据打包的过程中,怎么把记录的一些标志位装到结构体里面呢 紧急求助
bitfield,段位,如果你是要用到位变量的话,可以考虑这个方式。
但这个方式其实比较老了,现在属于lagacy语法,一般不用了。
除非你很缺空间,一般就不建议了。
或者另一种实现方式,用 位操作实现也可以。
不过我不知道你所说的 “标志位”指的是不是这个
使用结构和共用体,结构中位字段。能实现你的想法。//头文件中
typedef struct _bit_field {
unsigned int a : 5;
unsigned int b : 3;
unsigned int c : 20;
unsigned int d : 4;
} bit_field_s;
typedef union _int_data{
unsigned int d;
bit_field_s b;
}int_data
//函数中
int_data dat;
dat.b.a =1;//注意这里赋值对数据D的影响。这里实际是影响对应的位。不要超出数据范围
dat.d =32;
本帖最后由 damiaa 于 2017-9-16 12:24 编辑
这样很好。我比较懒,知道就行。反正编程自己一定要知道这些细节。
本帖最后由 damiaa 于 2017-9-17 00:13 编辑