急!!!!!跪求各位高手关于keil 3结构体定义的问题

wxiaojin   2010-4-11 20:50 楼主
是这样的
我现在main()外定义了一个
typedef union  _unfloat
{
  unsigned char bydata[4];
  float fdata;
}unfloat;


然后
void main()
{
     unfloat qq;
     while(1);
}

为什么编译说我没定义unfloat 和qq????

回复评论 (17)

楼主可以的啊,,,
点赞  2010-4-11 22:11
我试过了,没问题啊
点赞  2010-4-11 22:50
关注一下
点赞  2010-4-11 23:33
就是,这肯定没问题啊,是不是设置错了?
点赞  2010-4-12 00:08
放在main函数前面
点赞  2010-4-12 07:32
老兄,你确定想要这样定义“联合”吗?float类型在51里可是占三个字节,而同在联合中的数组定义了四个字节。
点赞  2010-4-12 08:23
似乎没有问题啊
点赞  2010-4-12 08:31
引用: 引用 6 楼 jiqiang01234 的回复:
老兄,你确定想要这样定义“联合”吗?float类型在51里可是占三个字节,而同在联合中的数组定义了四个字节。


不知兄台用的什么编译器。在keil c里float类型在51里确实是4个字节。
点赞  2010-4-12 15:23
谢谢大家了,我试了,把unfloat qq;
写在main()外面就可以了
还有那位老兄,float真的可以是4个字节
点赞  2010-4-12 22:59
确实是4个字节,我记错了。
点赞  2010-4-13 12:25
mark ,
  1. typedef union _unfloat
  2. {
  3.   unsigned char bydata[4];
  4.   float fdata;
  5. }unfloat;
  6. typedef union
  7. {
  8.   unsigned char bydata[4];
  9.   float fdata;
  10. }unfloat;

这2写法有区别吗?我都习惯用第二种
点赞  2010-4-13 14:14
不的哦,这个定义可以放里面吧...是不是哦...
   我看看....呵呵.
点赞  2010-4-13 16:32
呵呵.我说嘛,没的问题得.可以放main里面的啦...
      
点赞  2010-4-13 16:36
typedef union _unfloat
{
  unsigned char bydata[4];
  float fdata;
}unfloat;
typedef union
{
  unsigned char bydata[4];
  float fdata;
}unfloat;
有区别哦.第一种哈,可以在后面继续进行定义的,但第二种就不能在在后面继续定义联合型变量了.
点赞  2010-4-13 16:38
引用: 引用 14 楼 lchhzjx32226 的回复:

typedef union _unfloat
{
  unsigned char bydata[4];
  float fdata;
}unfloat;
typedef union
{
  unsigned char bydata[4];
  float fdata;
}unfloat;
有区别哦.第一种哈,可以在后面继续进行定义的,但第二种就不能在在后面继续定义……

为啥第二种不能继续定义?第二种不能用 unfloat 来定义吗?
点赞  2010-4-13 20:39
引用: 引用 14 楼 lchhzjx32226 的回复:
typedef union _unfloat
{
  unsigned char bydata[4];
  float fdata;
}unfloat;
typedef union
{
  unsigned char bydata[4];
  float fdata;
}unfloat;
有区别哦.第一种哈,可以在后面继续进行定义的,但第二种就不能在在后面继续定义联合……


这两种都是可以定义变量的哈!


  1. typedef union _unfloat
  2. {
  3.   unsigned char bydata[4];
  4.   float fdata;
  5. }unfloat;

  6. void main()
  7. {
  8.   unfloat qq;
  9.   while(1);
  10. }

我也是keil3,这么用没有问题
点赞  2010-4-13 21:57
再问大家一个关于float性数据在lcd上显示的问题
点赞  2010-4-14 16:27
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复