请教c问题?

[复制链接]
2366|11
 楼主| fengyeu 发表于 2007-11-21 21:04 | 显示全部楼层 |阅读模式
//*********************************************************************************
union                                          //程序标志位
{
unsigned int Register;
struct 
{
 unsigned char bus_reset        :1;
 unsigned char suspend          :1;
 unsigned char remote_wakeup    :1;
 unsigned char int_isr          :1;
 unsigned char not_end          :1;
 unsigned char usb_idle         :1;
 unsigned char usb_busy         :1;
 unsigned char setup_packet_in  :1;
 unsigned char setup_packet_out :1;
 unsigned char set_addr         :1;
 unsigned char usb_endp0_in     :1;
 unsigned char usb_endp2_in     :1;
 unsigned char usb_endp2_out    :1;
}flags;
}usb_flags;
//****************************************************
union                                         //中断寄存器
{
 unsigned char Register[2];
 struct 
  {
   unsigned char control_out_port  :1;
   unsigned char control_in_port   :1;
   unsigned char port_out_1        :1;
   unsigned char port_in_1         :1;
   unsigned char main_out_port     :1;
   unsigned char main_in_port      :1;
   unsigned char bus_reset         :1;
   unsigned char suspend_change    :1;
   unsigned char DMA_EOT           :1;
   unsigned char not_use           :7;
  }Interrupt;
}Interrupt_Register;
//****************************************************
 楼主| fengyeu 发表于 2007-11-21 21:07 | 显示全部楼层

????????

  :1;
  :1;
  :7
请问在这共用体里面的是什么作用啊!
不懂
 楼主| fengyeu 发表于 2007-11-21 21:08 | 显示全部楼层

还有unsigned char Register[2];

unsigned char Register[2];
ayb_ice 发表于 2007-11-21 21:12 | 显示全部楼层

主要是位域

 楼主| fengyeu 发表于 2007-11-21 21:24 | 显示全部楼层

位域???

潭浩强的书里好象没有啊 ????
 楼主| fengyeu 发表于 2007-11-21 21:27 | 显示全部楼层

找到了,我是不懂的在翻书


我是不懂的在翻书,
而不是把书看完了在写。
不子知到这样学对不?????
 楼主| fengyeu 发表于 2007-11-21 21:29 | 显示全部楼层

那这句unsigned char Register[2];

那这句unsigned char Register[2];
做什么的???
平常人 发表于 2007-11-21 21:31 | 显示全部楼层

一个有2个unsigned char变量的数组

数组的名字为Register。
taoest 发表于 2007-11-22 11:01 | 显示全部楼层

C

c语言基础的书,先看完再说。
 楼主| fengyeu 发表于 2007-11-22 22:11 | 显示全部楼层

那请问是不是这样的Register(如下)

Interrupt_Register.Register[0]==
   unsigned char control_out_port  :1;
   unsigned char control_in_port   :1;
   unsigned char port_out_1        :1;
   unsigned char port_in_1         :1;
   unsigned char main_out_port     :1;
   unsigned char main_in_port      :1;
   unsigned char bus_reset         :1;
   unsigned char suspend_change    :1;
//////////////////////////////////////////
Interrupt_Register.Register[1]==
   unsigned char DMA_EOT           :1;
   unsigned char not_use           :7;
computer00 发表于 2007-11-22 22:57 | 显示全部楼层

我看这些代码怎么这么眼熟呢?好象是圈圈写的...

 楼主| fengyeu 发表于 2007-11-22 23:20 | 显示全部楼层

是的OO的

是的OO的
我用KEIL调了下知道了
C啊。。。。。。。。。。。。继续
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

446

帖子

0

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