📜  esp8266 wifi.localip() 转字符串 - C++ (1)

📅  最后修改于: 2023-12-03 15:14:54.344000             🧑  作者: Mango

ESP8266 wifi.localip() 转字符串 - C++
简介

在ESP8266开发板上,wifi.localip()函数用于获取设备的本地IP地址。该函数返回一个IPAddress类型的对象,我们可以使用一些方法将其转换为字符串形式进行处理。

示例代码

下面是一个示例代码,演示了如何从IPAddress对象中获取IP地址并将其转换为字符串形式。

#include <ESP8266WiFi.h>

void setup() {
  Serial.begin(115200);
  delay(100);

  WiFi.mode(WIFI_STA);
  WiFi.begin("<YourNetworkSSID>", "<YourNetworkPassword>");

  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Connecting to WiFi...");
  }

  Serial.println("Connected to WiFi");
  Serial.println("Local IP Address:");
  
  // 获取本地IP地址
  IPAddress localIP = WiFi.localIP();
  
  // 将IP地址转换为字符串
  String ipString = String(localIP[0]) + "." + String(localIP[1]) + "." + String(localIP[2]) + "." + String(localIP[3]);

  // 输出IP地址字符串
  Serial.println(ipString);
}

void loop() {
  // 主循环
}
详细说明
  1. 首先,我们需要包含ESP8266WiFi库,这样我们才能使用WiFi相关的函数和类型。
  2. 在setup()函数中,我们初始化串口和WiFi模式。然后,使用WiFi.begin()函数连接到你的无线网络。在连接过程中,你可以添加一些等待时间和状态信息来实现更好的用户体验。
  3. 接下来,我们进入一个循环,直到成功连接到WiFi网络。你可以使用WiFi.status()函数检查连接状态,一旦连接成功,就可以退出循环,并显示 "Connected to WiFi" 的消息。
  4. 然后,我们调用WiFi.localIP()函数,该函数返回一个IPAddress对象,表示设备的本地IP地址。
  5. 我们通过访问IPAddress对象的每个字节,并使用String()函数将每个字节转换为字符串,并使用加号 "+" 连接它们来构建IP地址的字符串表示形式(例如:"192.168.1.1")。
  6. 最后,我们使用Serial.println()函数将IP地址字符串打印到串口。
markdown标记

上述代码中的c++标记表示这是一个C++代码块,适用于markdown格式中的代码片段标记。此标记可确保代码正确高亮显示。

希望这个介绍对你有帮助!