迪文科技论坛

 找回密码
 立即注册
搜索
查看: 27|回复: 2

【提问】C51的结构体数组应该怎么初始化

[复制链接]

17

主题

61

回帖

252

积分

中级会员

Rank: 3Rank: 3

积分
252
发表于 昨天 10:48 | 显示全部楼层 |阅读模式
使用如下方式初始化结构体数组后会报语法错误,是C51不支持这种写法吗?常量结构体数组在C51中应该怎么初始化?

  1. code STUT_Test_Stain gDefaultStain[DF_Test_MaxNum] =
  2. {
  3.     [0] = {
  4.         .name = {"DefaultStain1"},
  5.     },
  6.    
  7. };
复制代码


回复

使用道具 举报

17

主题

61

回帖

252

积分

中级会员

Rank: 3Rank: 3

积分
252
 楼主| 发表于 昨天 10:58 | 显示全部楼层
试了一下,这种初始化方式是支持的,就是阅读起来有点麻烦。。。
  1. code STUT_Test_Stain gDefaultStain[DF_Test_MaxNum] =
  2. {
  3.     {"DefaultStain1",0},
  4.     /*[0] = {
  5.         .name = {"DefaultStain1"},
  6.     },*/
  7.    
  8. };   
复制代码
回复

使用道具 举报

0

主题

357

回帖

2423

积分

金牌会员

Rank: 6Rank: 6

积分
2423
发表于 昨天 13:17 | 显示全部楼层
// 定义结构体类型
struct PageInfo {
    int pageId;
    char* pageName;
    void (*pageFunc)(void);
};

// 声明时初始化
struct PageInfo pages[16] = {
    {0, "精煮饭", 0},
    {1, "快煮饭", 0},
    {2, "海鲜粥", 0},
    {3, "蒸煮", 0},
    // ... 其他页面
    {15, "最后页面", 0}
};

这种可以AI进行编写。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2025-9-19 06:30 , Processed in 0.060373 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表