У меня есть функция, которая возвращает массив char, и я хочу, чтобы это превратилось в String, поэтому я могу лучше обработать его (по сравнению с другими сохраненными данными). Я использую этот простой для этого должно работать, но это не по какой-то причине (bufferPos
длина массива, buffer
является массив и item
пустая строка):Преобразование char массива в String
for(int k=0; k<bufferPos; k++){
item += buffer[k];
}
buffer
имеет правильные значения и так делает bufferPos
, но когда я пытаюсь преобразовать, например, 544900010837154, это справедливо лишь 54. Если добавить Serial.prints в течение примерно так:
for(int k=0; k<bufferPos; k++){
Serial.print(buffer[k]);
Serial.print("\t");
Serial.println(item);
item += buffer[k];
}
выход заключается в следующем:
5
4 5
4 54
9 54
0 54
0 54
0 54
1 54
0 54
8 54
3 54
7 54
1 54
Что мне не хватает? Такое ощущение, что такой простой задачей, и я не вижу решения ...
Спасибо! По какой-то причине str() не захотела компилировать, но String() выполняла и работает по назначению. – FloIancu
'str' не был объявлен в этой области (компилятор 1.8.3) –
Downvoting потому, что str() не является функцией Arduino. Тем не менее, String() действительно так увлекается Flolancu. –