Используем только потому, что нет другого выхода.
Вспоминая себя, когда я только-только знакомился с программированием, указатели воспринимались как что-то сверх естественное.
В то время как простые операции я мог представить себе в голове, то большая часть операций с указателями выглядела как магия.
Это если не брать во внимание то, что мы (автор функции) никак не можем проверить передают ли нам по указателю те данные, которых мы ожидаем, или случайный набор байт.
Указатели - мощный инструмент, но, на мой взгляд, их использования стоит избегать там, где для этого существуют другие инструменты.
Хотя мне и ставили в укор то, что я "фанат функций", объективных преимуществ использования набора "структура + функция" против функционального блока в данной ситуации я не вижу.
Я использую
- набор "cтруктура + функция" в тех случаях, когда результат работы 100% будет получен сразу после вызова функции;
В данном случае структура используется для того, чтобы сократить количество передаваемых функции параметров.- ФБ в тех случаях, когда выполнение задачи предположительно может потребовать более 1 цикла ПЛК и необходимо хранить промежуточные значения.