Есть такая проблема:
int *func(void);
void main(void)
{
int mass[10];
....
mass=func();
}
int* func(void)
{
int ret[10];
....
return ret;
}
VC-шный компилятор ругается на функцию, возвращающую указатель (func()) — типа нельзя возвращать указатель на локальную переменную.
Что, в общем, правильно и понятно.
Есть два выхода — либо заводить глобальный массив (чего очень как не охота), либо заводить структуру (struct ....),динственным членом которой является массив и заставлять функцию возвращать эту структуру (что, как мне кажется, тоже не очень хорошо).
Вопрос такой: насколько ликвиден второй способ (на котором я и остановился) и какие еще есть варианты?