打印

MDK环境下这样赋值不行吗?

[复制链接]
1904|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yzzly|  楼主 | 2011-12-19 10:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
typedef  struct
{
Uint32  Range    :32;
Uint32  Delay    :32;
Uint32  Sta     :32;
} ProtPar;

ProtPar volatile CurrentOne,CurrentTwo,CurrentThree,AfterAccel,ZeroSequOver,InverseTime,*ProtParPoint;

Uint32 *Temp32;

Temp32=*ProtParPoint.Range;
沙发
午夜霓虹| | 2011-12-19 12:59 | 只看该作者
不光MDK不行 ,标准C的应该都不行。或者说你写的这个东西根本就不对。

使用特权

评论回复
板凳
香水城| | 2011-12-19 16:10 | 只看该作者
Uint32  Range    :32;

这个冒号后面再跟一个32是什么意思?我见过冒号后面跟小于8的数,还没见过这么大数的。

使用特权

评论回复
地板
baidudz| | 2011-12-19 18:28 | 只看该作者
没见过这样写的

使用特权

评论回复
5
秋天落叶| | 2011-12-19 18:36 | 只看该作者
好像不行

使用特权

评论回复
6
hsbjb| | 2011-12-19 22:21 | 只看该作者
楼主为啥一定要这样赋值呢

使用特权

评论回复
7
henry2011| | 2011-12-20 15:33 | 只看该作者
可以写成Uint32  Temp32 = ProtParPoint-》Range;

使用特权

评论回复
8
guet_new_man| | 2011-12-20 17:58 | 只看该作者
靠,那不是位域的定义方式吗? 怎么能当做赋值用??

使用特权

评论回复
9
xsgy123| | 2011-12-20 18:07 | 只看该作者
不建议楼主这样写

使用特权

评论回复
10
yybj| | 2011-12-20 18:24 | 只看该作者
不行

使用特权

评论回复
11
video_vb| | 2011-12-22 09:59 | 只看该作者
可以呀,我一直这样写的:
struct AUT{
        unsigned socu:        4;               
                unsigned enb:        1;               
                unsigned sta:        1;       
        unsigned act:        4;       
};
extern struct AUT Do_Ato;

当单片机内存不够时,每1bit都不浪费。

使用特权

评论回复
12
xlhtracy| | 2011-12-22 11:18 | 只看该作者
看看各位的高见

使用特权

评论回复
13
xxx378087736| | 2011-12-22 16:16 | 只看该作者
:L

使用特权

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

本版积分规则

427

主题

1178

帖子

3

粉丝