关于c的一段程序,看不太明白!请高手指点!

[复制链接]
2816|6
 楼主| qq51886469 发表于 2008-11-22 18:58 | 显示全部楼层 |阅读模式
尤其是 那个 near 弄得我比较糊涂

程序如下:
union
{
    struct
    {
        unsigned B0:1;
        unsigned B1:1;
        unsigned B2:1;
        unsigned B3:1;
        unsigned B4:1;
        unsigned B5:1;
        unsigned B6:1;
        unsigned B7:1;
    };
    unsigned char nLedValue;
}near nLedValue2U,nLedValue3U,nLedValue4U,nLedValue5U,nLedValue6U,
nLedValue7U,nLedValue8U,nLedValue9U,nLedValue10U,nLedValue11U;

#define nLedValue2     nLedValue2U.nLedValue
#define nLedValue3     nLedValue3U.nLedValue
#define nLedValue4     nLedValue4U.nLedValue
#define nLedValue5     nLedValue5U.nLedValue
#define nLedValue6     nLedValue6U.nLedValue
#define nLedValue7     nLedValue7U.nLedValue
#define nLedValue8     nLedValue8U.nLedValue
#define nLedValue9     nLedValue9U.nLedValue
#define nLedValue10         nLedValue10U.nLedValue
#define nLedValue11         nLedValue11U.nLedValue

#define bLedLine4        nLedValue2U.B0
#define bLedLine3        nLedValue2U.B1
#define bLedLine2        nLedValue2U.B2
#define bLedLine1        nLedValue2U.B3
#define bLedReturn      nLedValue2U.B4
#define bLedReturnDp1     nLedValue2U.B5
#define bLedReturnDp2    nLedValue2U.B6
#define bLedReturnDp3    nLedValue2U.B7

#define bLedBackAuto    nLedValue3U.B0
#define bLedBackCustom    nLedValue3U.B1
#define bLedKnead        nLedValue3U.B2
#define bLedKnock        nLedValue3U.B3
#define bLedSync        nLedValue3U.B4
#define bLedKneadB        nLedValue3U.B5
#define bLedPress        nLedValue3U.B6
#define bLedTap        nLedValue3U.B7
ejack 发表于 2008-11-22 19:42 | 显示全部楼层

如果是51单片机,不用看这种程序了,纯属误导

ayb_ice 发表于 2008-11-22 20:52 | 显示全部楼层

near应该是扩展的关键字

呆板书生 发表于 2008-11-22 21:39 | 显示全部楼层

这是一种较好的定义方法

near nLedValue2U,nLedValue3U,nLedValue4U...

其实是定义了一堆的near型变量,这种变量有两种表达方式,bit方式和char方式。

似乎这是PICC 的语法。

emailli 发表于 2008-11-22 22:23 | 显示全部楼层

标准的位段结构。

无论是51还是其他什么的。都可以使用

因为这个是属于标准C的范畴
bh_wang 发表于 2008-11-24 14:05 | 显示全部楼层

移植性好而已

Ice_River 发表于 2008-11-24 17:09 | 显示全部楼层

新手还是先用自己的方法!

然后再研究这个!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

83

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部