In C, a struct
(record data structure) can be the return type of a function, but an array cannot be. What design characteristics of the C Language cause arrays to b
The characteristic is that in the small and speedy C language you don't want the equivalent of large memcpy
operations when returning. If you badly need arrays returned, make them a member of a struct
, and voila, array return in C. Sort of, starting with C89 :-)
Or use a memcpy
yourself when and where you need it.