Что считается лучшей практикой при написании методов, возвращающих строки в C?
передача в буфер и размер:
void example_m_a(type_a a,char * buff,size_t buff_size)
или создание и возврат строки правильного размера:
char * example_m_b(type_a a)
P.S. что вы думаете о возвращении буфера ptr, чтобы позволить стиль назначения и
вызовы вложенных функций, т.е.
char * example_m_a(type_a a,char * buff,size_t buff_size)
{
...
return buff;
}