Разделение строки на подстроки
- Войдите на сайт для отправки комментариев
Ср, 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 Вы читали? Только честно? Прочтите, там всё есть.