ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 апреля
794652
misyachniy (15.11.2017 19:55, просмотров: 2274)
Прикручиваю к меню функцию snprintf() IAR ARM. https://stackoverflow.com/questions/22295028/sprintf-corrupting-arrays-in-iar-microcontroller
http://demin.ws/blog/russian/2013/01/28/use-snprintf-on-different-platforms/
Именно snprintf для того чтобы увидеть ошибки на экране без зависания/вылетания программы. Сейчас хочу к строка меню добавить курсор '>'. Вызываю так snprintf(&LCD_buf, 16, &"Audio... %c", '>'); Пробовал несколько вариантов результат отрицательный Объявляю строку меню типа длиной 16 символов, то печатается 16, курсора нет и 16 символ 0. Объявляю строку меню типа длиной 17 символов, то курсор не печатается и 16 символ 0. Я так понял snprintf копирует побайтно символы в результирующую строку с контролем длины. Почитал статью по ссылке - мне нужно как в Windows сформировать 16 знаков без 0 в конце По второй ссылке пишут о глюках решаемой настройкой библиотеки printf компилятора. Мне нужно чтобы функция формировала 16 символов без нуля в конце. Завтра я поэкспериментирую и есть шанс получить требуемый результат. ;-) Возможно кто уже проходил этот путь и подскажет?