打印

kile中的结构变量怎么用赋值语句赋值

[复制链接]
3093|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zha1211|  楼主 | 2012-10-13 23:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ui, USB, ip, SCR, ev
UsbMouseDescriptor_bLenth=0x12;前面的UsbMouseDescriptor是变量名后面的blenth是元素我之前用‘.’来连接两者,但是系统报错了
USBCORD.C(14): error C129: missing ';' before '.'
但是我将‘.’去掉或者改成‘_’就没有问题了,我就是不明白c语言里面结构变量赋值不是<结构变量名>.<成员名>吗,那为什么会这样
typedef struct USB
{
   uint8 bLenth;
   uint8 bDescriptorType;
   uint8 bcdUsb[2];
   uint8 bDeviceClass;
   uint8 bDeviceSubClass;
   uint8 bDeviceProtocol;
   uint8 bMaxPackeSize0;
   uint8 idVender[2];
   uint8 idProduct[2];
   uint8 bcdDevice[2];
   uint8 iManufacture;
   uint8 iProduct;
   uint8 iSerialNumber;
   uint8 bNumConfigurations;
   uint8 *StructPosition;
}UsbDeviceDescriptor;
这个是定义结构
UsbDeviceDescriptor UsbMouseDescriptor;
这个就是变量声明。谢谢大写来帮帮忙啦!感激涕零!

相关帖子

沙发
fengxt27| | 2012-10-14 10:17 | 只看该作者
变量声明应该是 struct USB UsbMouseDescriptor吧
按你的位置写的话UsbDeviceDescriptor也是你声明的一个变量,USB 才是变量类型

使用特权

评论回复
板凳
zha1211|  楼主 | 2012-10-14 10:28 | 只看该作者
typedef struct USB
{
  ........................
}
UsbDeviceDescriptor;
这个是自定义类型,将结构类型为USB的结构定义成UsbDeviceDescriptor.以后直接用UsbDeviceDescriptor定义变量!不用加struct

使用特权

评论回复
地板
kangkangrun| | 2012-10-14 10:55 | 只看该作者
围观

使用特权

评论回复
5
原野之狼| | 2012-10-14 15:45 | 只看该作者
结构体变量的元素采用.来访问  
如果是指针变量 则采用->来访问

使用.报错的话  请查看其它地方有没有问题

你用_  这个是为了啥  没有说法呀

使用特权

评论回复
6
zha1211|  楼主 | 2012-10-14 17:47 | 只看该作者
我就是加了那个结构!出错只在赋值语句,删掉就不报错了

使用特权

评论回复
7
吾要单片机| | 2012-10-14 19:39 | 只看该作者
我同意原野之狼的观点,肯定别的问题,应该是书写有问题吧

使用特权

评论回复
8
cym_anhui| | 2012-10-14 22:05 | 只看该作者
typedef struct {
    INT8U bOut;                                         // 试剂条支架位置
    INT8U bBarAttached;                         // 有试剂条?  Reserved.
    INT8U bReserved[2];                         // 有试剂条?  Reserved.
} tBAR_HOOK_CTRL;

tBAR_HOOK_CTRL   Bar_Hook_Ctrl;

Bar_Hook_Ctrl.bOut =0x01;

使用特权

评论回复
9
zha1211|  楼主 | 2012-10-19 13:04 | 只看该作者
谢谢各位了!我的问题前段时间找到了!我的赋值语句没有在MAIN中,因为不是定义是赋值所以一定要在main中

使用特权

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

本版积分规则

3

主题

18

帖子

0

粉丝