esp_err_t esp_wifi_init(const wifi_init_config_t *config)
- 这里的一个
config
是指向wifi_init_config_t
类型的指针,表示它指向一个wifi_init_config_t
结构体。 - 当调用
esp_wifi_init(&cfg)
时,&cfg
得到的值就是cfg
结构体在内存中的地址,config
然后查看这个地址的副本,从而指向cfg
指针的。 - 相反,
esp_wifi_init
函数内部通过config
指针访问cfg
结构体的数据。
wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();
wifi_init_config_t
是一个结构体类型,cfg
是这个结构体的变量。WIFI_INIT_CONFIG_DEFAULT()
是一个宏,通常用于给cfg
结构体赋予默认值。宏的作用是返回一个默认的wifi_init_config_t
结构体。
esp_wifi_init(&cfg);
&cfg
是获取cfg
变量的地址,表示传递cfg
这个结构体的指针(地址)给函数esp_wifi_init
。cfg
本身就是结构体,&cfg
但是这个结构体位于内存中的地址。