I have in .h file:
typedef struct MyName {
uint8_t AA;
uint8_t BB;
};
extern const MyName NewName[num];
在 .c 文件中,我有:
const MyName NewName[num] = {{0x01,0x02}, {0x03,0x04}};
编译器报错“unknown type name” MyName,我该如何解决?谢谢您的帮助。
I have in .h file:
typedef struct MyName {
uint8_t AA;
uint8_t BB;
};
extern const MyName NewName[num];
在 .c 文件中,我有:
const MyName NewName[num] = {{0x01,0x02}, {0x03,0x04}};
typedef
应该是什么意思呢?
typedef struct myName
{
uint8_t AA;
uint8_t BB;
}
MyName;
如果没有最后的MyName
,你实际上还没有进行任何typedef
操作。
typedef
本身中包含const
,但你确实可以这样做。我不这样做的原因是因为可能有些情况下我需要一个非const
的结构体实例。 - user3386109struct MyName
{
uint8_t AA;
uint8_t BB;
};
extern const struct MyName NewName[];
extern const int num;
const struct MyName NewName[] = {{0x01,0x02}, {0x03,0x04}};
const int num = sizeof( NewName ) / sizeof(struct MyName);