正如标题所说,我接手的一个项目有一个静态易失性结构,在连接到WiFi网络时基本上保存网络数据。我需要创建这些结构的数组来保存以前网络的数据。
这就是我想要复制的结构:
static volatile struct
{
BYTE MySSID[32];
BYTE SsidLength;
BYTE SecurityMode;
BYTE SecurityKey[32];
BYTE SecurityKeyLength;
BYTE dataValid;
BYTE networkType;
BYTE IsLinked;
BYTE ConnectionID;
} NetworkStruct;
这是我创建数组的失败尝试中最近的一次,我可以将此结构中的数据复制到:
static volatile struct
{
BYTE MySSID[32];
BYTE SsidLength;
BYTE SecurityMode;
BYTE SecurityKey[32];
BYTE SecurityKeyLength;
BYTE dataValid;
BYTE networkType;
BYTE IsLinked;
BYTE ConnectionID;
} SavedNetworks[10];
到目前为止,这次和其他所有尝试都会引发错误。
以上是上述尝试引发的错误:
链接错误:无法分配.nbss,size = 944字节, attributes = bss near
链接错误:无法分配数据内存
答案 0 :(得分:3)
链接错误:无法分配.nbss,size = 944字节
部分
链接器无法在.bss部分中分配数组所需的内存,这是所有未初始化的静态存储持续时间变量所在的位置。你对静态/全局变量使用太多内存,就这么简单。
如何解决这个问题取决于具体的系统。