Вы не можете вернуть массив в C. Вы можете вернуть struct
, который содержит массив (который может быть массивом указателей).Вы также можете вернуть указатель на массив, срок жизни которого должен быть больше, чем у функции, которая его возвращает, например, статический массив или возвращенный из calloc()
.Если он выделен динамически, вызывающая сторона должна освободить его один раз и только один раз.Или вызывающая сторона может выделить массив назначения и передать его адрес в качестве выходного параметра.