C语言结构体问题,求指点

[复制链接]
2183|6
 楼主| byrin 发表于 2013-6-5 22:28 | 显示全部楼层 |阅读模式
下面这个小程序 编译时提示结构体初始化有错误.可是怎么就错了呢?
  1. #include <stdio.h>

  2. #define uchar unsigned char

  3. typedef struct
  4. {
  5.         uchar a;
  6.         uchar b;
  7. }_ATEST;

  8. typedef struct
  9. {
  10.         uchar c;
  11.         uchar d;
  12. }_BTEST;

  13. typedef struct
  14. {
  15.         _ATEST x;
  16.         _BTEST y;
  17. }_TTEST;

  18. _ATEST Test_a=
  19. {
  20.         1,
  21.         2,
  22. };

  23. _BTEST Test_b=
  24. {
  25.         3,
  26.         4,
  27. };

  28. _TTEST Test=
  29. {
  30.         Test_a,
  31.         Test_b,
  32. };

  33. int main(void)
  34. {
  35.         printf("%d, %d",Test.x.a,Test.y.d);
  36.         return 0;
  37. }
huangxz 发表于 2013-6-5 22:46 | 显示全部楼层
没有啊
你用啥编译器?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

参与人数 1威望 +2 收起 理由
byrin + 2

查看全部评分

 楼主| byrin 发表于 2013-6-6 08:26 | 显示全部楼层
huangxz 发表于 2013-6-5 22:46
没有啊
你用啥编译器?

用的是VC6.0 而且在MDK(keil4)中也有这个问题.
一周一天班 发表于 2013-6-6 09:47 | 显示全部楼层
_TTEST Test=
{
        Test_a,
        Test_b,
};
可能不能正常初始化
huangxz 发表于 2013-6-6 10:05 | 显示全部楼层
一周一天班 发表于 2013-6-6 09:47
_TTEST Test=
{
        Test_a,
  1. _TTEST Test=
  2. {
  3.         {1,2},
  4.         {3,4},
  5. };

就可以了,keil中可能还是不能自动跟踪识别数据的的类型
 楼主| byrin 发表于 2013-6-6 20:02 | 显示全部楼层
huangxz 发表于 2013-6-6 10:05
就可以了,keil中可能还是不能自动跟踪识别数据的的类型

问题是结构体中初始化的内容太多 我才这样去做的.算了 换个方法
bkvalve 发表于 2013-6-6 20:33 | 显示全部楼层
看不懂啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

104

帖子

1

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