2
我收到以下错误而编译我的代码:错误[Pe028]:表达式必须具有恒定值
错误[Pe028]:表达式必须具有恒定值
我我已经阅读了一些关于这个问题的其他文章,但我无法解决这个问题。
我有两个类型定义一个头文件:
typedef struct{
int32_t a;
int32_t b;
int32_t c;
}mydefone;
#ifndef _my_def_one
#define _my_def_one
extern mydefone MyDefOne;
#endif
typedef struct{
int32_t header;
mydefone definition;
}mydeftwo;
#ifndef _my_def_two
#define _my_def_two
extern mydeftwo MyDefTwo;
#endif
我现在想用这两个外部定义在我的.c文件,并将它们这样相互链接:
mydefone MyDefOne = {1,2,3};
mydeftwo MyDefTwo = {567,MyDefOne};
和我的编译器会为我的MyDefTwo引发提到的错误。
我知道通常我现在不需要头部解决方案,但后来我需要在另一个c文件中使用这些变量(相同的副本),只需实现该头部。
在此先感谢! ben
感谢您的咨询!它正在工作:) –
我不知道如何将问题标记为解决方案,但这一个是它对我来说 –