Это почти наверняка абсолютно не подходит.Пустые указатели чертовски плохи с самого начала, смешивая их с изменяемыми статическими данными, и у вас есть что-то довольно ужасное.Вдобавок к этому примитивный развернутый массив размером с магическое число, и я очень рад, что этого нет в моем коде.Конечно, если вам нужно, то вам нужно, но в невероятном большинстве нового кода вам ничего подобного не понадобится.
Да, размер void * варьируется.