c++使用espidf进行wifi连接时,发现如下代码可以连接:

wifi_config_t wifi_config = {
.sta = {
.ssid = "HBDT-23F",
.password = "hbishbis"
}
};

但如下代码不可连接:

wifi_config_t wifi_config;
strcpy(wifi_config.sta.ssid, "HBDT-23F");
strcpy(wifi_config.sta.password, "hbishbis");

经过排查发现espidf对于连接阶段除了ssidpassword还使用到了其他变量,所以应该清零结构体内存:

wifi_config_t wifi_config{};

一个很低级的问题…记录下来时刻警醒。