发新帖我要提问
12
返回列表
打印

引用 value 的各个字节

[复制链接]
楼主: yufe
手机看帖
扫描二维码
随时随地手机跟帖
21
dengdc| | 2021-11-13 21:57 | 只看该作者 回帖奖励 |倒序浏览
是啊,Tobyte 或 byte 没有实际的意义,我是想能不能用两个关键字表示其中的单个字节,用一个关键字表示整体,形式如:
Value_2  Value.2  Value(2)  Value[2]  ----引用单个字节
value ----引用整体

使用特权

评论回复
22
dengdc| | 2021-11-13 22:02 | 只看该作者

用联合体,然后:
#define value     value.dw   
#define value_0 value.byte.b0
#define value_1 value.byte.b1
#define value_2 value.byte.b2
#define value_3 value.byte.b3
不就可以满足要求了嘛。

使用特权

评论回复
23
dengdc| | 2021-11-13 22:04 | 只看该作者
void function(unsigned long value)
{
      value_0=value&&0x0001;
value_1=value&0x0010;
value_2=value&0x0100;
value_3=value&0x1000;

使用特权

评论回复
24
lizye| | 2021-11-13 22:07 | 只看该作者
#define get_u8_0(x)  ((U8*)&x)[0]
#define get_u8_1(x)  ((U8*)&x)[1]
#define get_u8_2(x)  ((U8*)&x)[2]
#define get_u8_3(x)  ((U8*)&x)[3]


U32 test = 0x12345678;

U8 a,b,c,d;

a = get_u8_0(test); // 0x12
b = get_u8_1(test); // 0x34
c = get_u8_2(test); // 0x56
d = get_u8_3(test); // 0x78

以上结果针对KEIL C51

使用特权

评论回复
25
yufe|  楼主 | 2021-11-13 22:09 | 只看该作者
嗯,我再好好缕一缕吧,有了好消息及时通知大家

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则