В моем ISR У меня есть буфер, который получает чучело от USART, поэтому я объявил буфер в качестве летучего:Передачи летучего массива strncpy
volatile uint8_t RxBuffer1[BUFFER_LENGTH];
Ok, никаких проблем там. Я считаю, что это стандартная практика.
Где-то в основной() Мне нужно скопировать часть этого массива, так как массив представляет собой кольцевой буфер и получить уничтожены в когда-то в будущем:
strncpy(Data, RxBuffer1, len);
Да, но это не нет! мой компилятор послушно говорит мне:
передавая аргумент 2 из «летучего» классификатором «strncpy» отбрасывает от указателя целевого типа
поскольку strncpy делает «s2» константный символ *
Я дону Думаю, я делаю то, что не было сделано в качестве стандартной практики. Как это сделать правильно?
Вы можете применить его к const char *. –
Дин динг динг. у нас есть победитель! Спасибо. Это действительно избавилось от ошибки, но я нервничаю по этому поводу. Я действительно просто маскирую проблему или это действительно так, как это делают «профи»? – user1160866