Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Динамическая замена символа в массиве |
Автор: supercelt 26.11.2017, 16:24 | ||||||
Всем привет. Прогаю на СИ под МК stm32. Вопрос такой: Есть массив, с указателем на него
В процессе работы появляется ещё один массив, он тоже заранее известной длины, но он скажем так наполняется тем, что чел введёт с клавиатуры
После ввода, данные в этом массиве могут быть такими: *100# А вопрос вот, нужно в исходном массиве заменить символ # на то что во втором массиве. А динамической заменой я назвал, потому что надо в исходном массиве всё что после # - подвинуть соответственно вправо. И должно получиться
Впринципе можно заморочиться и написать свою ф-ию, но нет ли стандартных решений, более лёгких что ли? |
Автор: akizelokro 27.11.2017, 18:11 |
Да вообщем-то что так маета, что так маета (хоть и не очень большая) strcat/strncat либо разбор ручками. |
Автор: Курсант 22.12.2017, 11:41 |
Первый массив разбейте на два. Получится Arr1 = "AT+CUSD=1,"; Arr2 = ",15\r" Потом у Вас появляется третий массив. Arr3 = "*100#". Дописываете Arr3 к Arr1, потом к тому, что получилось дописываете Arr2. PROFIT. |
Автор: Dov 23.12.2017, 21:43 | ||||
Ну, если предположить, что данные выглядят как-то так:
то можно записать как-то так:
Указатель перед этим нужно проверить на валидность. |