Ребят, недавно приобрел набор от амперки "Интернет вещей" продолжение матрешки .. , тут эксперимент номер 4 (Напоминальник). Есть тут такая строчка кода, которая мне не понятна , вот она : wifi.send(all.c_str(),all.length()). wifi.send- понятно, что такое all- тоже, но вот что такое с_str и length не очень, поясните непросветленному пожалуйста!
#include "ESP8266.h" #include <SoftwareSerial.h> #define SSID "имя_твоего_Wi-Fi" #define PASSWORD "пароль_твоего_Wi-Fi" #define BTN_PIN 12 SoftwareSerial mySerial(4, 5); ESP8266 wifi(mySerial); boolean buttonWasUp = true; String maker_ID = "id_компонента_webhooks"; void setup(void) { Serial.begin(9600); if (wifi.joinAP(SSID, PASSWORD)) { Serial.println("I'm ready! Press the button."); } else { Serial.println("Wi-Fi connection error"); } } void loop(void) { boolean buttonIsUp = digitalRead(BTN_PIN); if (buttonWasUp && !buttonIsUp) { delay(10); buttonIsUp = digitalRead(BTN_PIN); if (!buttonIsUp) { sendEmail(); Serial.println("Notification has been sent"); } } buttonWasUp = buttonIsUp; } boolean sendEmail() { if (wifi.createTCP("maker.ifttt.com", 80)) { String value1 = "Hello!"; String request = "GET /trigger/feed/with/key/" + maker_ID + "?value1=" + value1 + " HTTP/1.1\r\n"; request += "Host: maker.ifttt.com\r\n\r\n"; wifi.send(request.c_str(), request.length()); wifi.releaseTCP(); } else { Serial.println("create tcp error"); } }
с_str() - отдает указатель на внутренний буфер строки (char *), совместимый с С-строками, ну а length() длину строки, очевидно.