Разделение строки на подстроки
- Войдите на сайт для отправки комментариев
Ср, 28/03/2018 - 18:00
Суть такова
Я ввожу строку типа "read 123",
где read - команда которую нужно выполнить, (Вообще это будет программа для чтения внешней epprom 24cxx)
а 123 - параметр (В данном случае байт до которого читать память).
То есть строку нужно разделить и сравнить ткк если анализировать ее целиком, функция equals() нас не поймет, ну точнее поймет но если мы добавим парамет строка ведь тоже измениться. Вот код
if (Serial.available() > 0) { //если пришли данные
str = Serial.readStringUntil('\n'); //задаем значени строки
f = Serial.parseInt(); //задем параметр
Serial.print("[you]");
Serial.println(str); //выводим то что пришло
if(str.equalsIgnoreCase("read")){ //проверяем если введено read тогда ...
read();}
}
Думал сделать разделение но не совсем понимаю как, а то что нашел работет только с масивами char
char * pch;
pch = strtok (str," ");
while (pch != NULL)
{
Serial.println(pch);
pch = strtok (NULL, " ");
}
Можете помочь ?
P.S.
я чайник
Ну, а описание класса String Вы читали? Только честно? Прочтите, там всё есть.