【问题标题】:array of strings in arduino Carduino C中的字符串数组
【发布时间】:2018-09-28 18:53:10
【问题描述】:

我正在使用 NodeMCU (ESP8266) 构建一个小项目。我想扫描所有可用的 WiFi 网络,以数组的形式收集它们。这是我的功能:

String getWifiArray(void){
  WiFi.mode(WIFI_STA);
  WiFi.disconnect();
  delay(500);
  byte n = WiFi.scanNetworks();
  String nets[] = {};
  for (byte i=0; i<n; i++){
    nets[i]= WiFi.SSID(i);
  }

  return nets[];
}

我收到expected primary-expression before ']' token 错误。 如何修复此代码?

【问题讨论】:

  • 动态分配内存并返回指针的地址。对于字符串数组,它是引用的引用。使用原生 c 而不是 arduino 特定的类。

标签: arduino esp8266 nodemcu


【解决方案1】:

函数不能返回整个数组。一个函数只能有一个返回值。而是从调用者传入一个数组并让这个函数填充它。

您还创建了具有零元素的数组。因此,当您输入第一个字符串时,您会覆盖数组的边界并破坏内存。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-30
    • 2023-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多