Инициализация массива после объявления

gcc 4.4.3 c89

У меня есть следующий код в качестве примера того, что я пытаюсь сделать. Я не знаю фактический размер массива, пока я не войду в функцию. Однако я не думаю, что смогу установить размер массива после того, как объявил его. Мне нужно, чтобы он был глобальным, так как некоторым другим функциям потребуется доступ к именам устройств.

Большое спасибо за любые предложения,

/* global */
char *devices_names[];

void fill_devices(size_t num_devices)
{
    devices_names[num_devices];

    /* start filling */
}

Ответы на вопрос(3)

Ваш ответ на вопрос