Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在Arduino上使用char数组实现函数_C++_Arduino_Wifi_Esp8266 - Fatal编程技术网

C++ 如何在Arduino上使用char数组实现函数

C++ 如何在Arduino上使用char数组实现函数,c++,arduino,wifi,esp8266,C++,Arduino,Wifi,Esp8266,我正在使用ESP8266作为WiFi服务器绘制草图,我需要向客户端发送字符串,为此我使用以下代码: char sbuf[] = "Hello world!\n\r"; size_t len = strlen(sbuf); for (i = 0; i < MAXCLIENTS; i++) { if (serverClients[i] && serverClients[i].connected()) { serverClients[i].write((

我正在使用ESP8266作为WiFi服务器绘制草图,我需要向客户端发送字符串,为此我使用以下代码:

  char sbuf[] = "Hello world!\n\r";
  size_t len = strlen(sbuf);
  for (i = 0; i < MAXCLIENTS; i++) {
  if (serverClients[i] && serverClients[i].connected()) {
     serverClients[i].write((char*) &sbuf, len);
     delay(1);
   }
 }

但是它不起作用,客户机没有收到任何东西,有人可以告诉我我的错误是什么?

sizeof没有做你认为它在这里做的事情。得到4是因为这是指针的大小。改用strlen。它将告诉您到\n的时间。如果您也需要,请添加两个

void sendDataToClient( char *sbuf[]) {
这条线也不是你想的那样。它正在传递一个指针数组。您需要的是指针或数组,但肯定不是指针数组

void sendDataToClient( char *sbuf) {

应该是

serverClients[i].write(sbuf, len);

我打赌

sizeof并不像你想象的那样。得到4是因为这是指针的大小。改用strlen。它将告诉您到\n的时间。如果您也需要,请添加两个

void sendDataToClient( char *sbuf[]) {
这条线也不是你想的那样。它正在传递一个指针数组。您需要的是指针或数组,但肯定不是指针数组

void sendDataToClient( char *sbuf) {

应该是

serverClients[i].write(sbuf, len);

我打赌

Delta,我已经做了更改,我仍然得到len4的值,客户端没有收到任何东西,您也在传递一个指针数组。丢失参数sbuf.Delta上的括号,我已经做了更改,我仍然得到len 4的值,客户端没有收到任何东西,您也在传递指针数组。丢失参数sbuf上的括号。