Как очистить предыдущие значения при использовании strcat() для добавления строк?
Есть ли какая-либо другая функция для добавления строк в буфер и обновления значений?
Вот с такой проблемой я сталкиваюсь при использовании strcat()
char temp[2] = "A";
char temp_end[2] = "a";
char buf_adc[20]="alok";
char buf_hum[20]="lok";
char buf_temp[20]="vjf";
char buf[100];
void setup() {
Serial.begin(115200);
}
void loop() {
strcat(buf,buf_adc);
strcat(buf,temp);
strcat(buf,buf_hum);
strcat(buf,temp);
strcat(buf,buf_temp);
strcat(buf,temp_end);
Serial.println(buf);
}
@Alok Mishra, 👍0
1 ответ
Лучший ответ:
▲ 1
strcat
всегда присоединяется к концу строки. Вместо этого для вашего первого strcat
вам следует использовать strcpy
, который копирует одну строку поверх другой, то есть помещает ее в начало строки, фактически начиная новую строку.
Однако, если вам действительно не нужны данные в строке по какой-то конкретной причине, вам не нужно создавать строку — просто выведите каждую часть в последовательный порт отдельно с помощью ее собственной функции Serial.print
.
,
@Majenko
Смотрите также:
- Как разделить входящую строку?
- Arduino Serial.ReadString() проблема
- чтение нескольких целочисленных значений arduino mega на других arduino mega
- Serial1.ReadString() на arduino mega возвращает пустую строку
- Не удалось удалить символ T из передатчика Arduino
- Как вывести несколько переменных в строке?
- форматирование строк в Arduino для вывода
- Очень простая операция Arduino Uno Serial.readString()