我将结构定义为:
struct _connection_info_t{
char unique_name[5];
char ip[16];
char port[5];
}WIFI_connection_info_g[2],zz[3];并在"sprintf“函数中使用WIFI_connection_info_g变量:
sprintf(buffer,"AT+CIPSTART=\"TCP\",\"%s\",%s",WIFI_connection_info_g[0].ip,WIFI_connection_info_g[0].port);当我编译上面的代码时,编译器会生成以下错误:
wifi_tempalte.h:290:错误:(1402)指向eeprom的指针也不能指向其他数据类型
但是,当我更改"sprintf“函数并使用"zz”变量时,如下所示:
sprintf(buffer,"AT+CIPSTART=\"TCP\",\"%s\",%s",zz[0].ip,zz[0].port);编译成功。
注1:我的目标设备是16f1829。
注2:编译器版本为1.30
发布于 2018-09-20 13:25:54
可能太大了不可能一次申报。您可能必须在不同的C文件中声明它的不同实例。xc8可能会感到困惑。编译器的目标是一个8处理器,它倾向于将东西保存在同一个页面(256个RAM块)中。不过,这可能会让人感到困惑。
https://stackoverflow.com/questions/46020181
复制相似问题