我正在尝试编译这段代码:
代码:
全选byte tx_buf[BUF_L];
unsigned int tx_buf_start,tx_buf_end=0;
WiFiClient client;
size_t tx_buf_send()
{
if (client.connected() && (tx_buf_start!=tx_buf_end)) {
unsigned int end = (tx_buf_start= BUF_L) {
tx_buf_start = 0;
written_again = client.write(tx_buf,tx_buf_end);
tx_buf_start+=written_again;
}
return written+written_again;
} else return 0;
}
编译错误是:
在 /home/manu/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WiFi/src/ESP8266WiFi.h:39:0 中包含的文件中,
来自 /home/manu/Arduino /huzzah_as_wifi_serial/huzzah_as_wifi_serial.ino:1:/home/manu/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WiFi/src/WiFiClient.h
: 在'size_t WiFiClient::write(T& , size_t) [with T = unsigned char [512]; size_t = unsigned int]':
/home/manu/Arduino/huzzah_as_wifi_serial/huzzah_as_wifi_serial.ino:75:53: 从这里需要
/home/manu/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WiFi /src/WiFiClient.h:123:36: 错误:请求'source'中的成员'available',它是非类类型'unsigned char [512]'
size_t left = source.available();
^
/home/manu/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WiFi/src/WiFiClient.h:127:5: error: request for member 'read' in 'source', 这是非类类型 'unsigned char [512]'
source.read(buffer.get(), will_send);
这是在 arduino-1.6.12 中编译的。我尝试了几次转换以强制 gcc 使用 WiFiClient::write(const uint8_t *buf, size_t size); 方法而不是给出编译器错误的模板版本,因为我已经看到它应该修复编译器错误而没有运气。
我在这里错过了什么?