На самом деле есть только два пути.Первый - определить struct :
typedef struct {
int value;
element* next;
} element;
Затем у вас есть то, что называется связанным списком.Вы можете получить доступ к n-му элементу, просматривая связанные структуры element
, и вы знаете, что достигли конца, когда element.next
является нулевым указателем (а element->next
является SegFault или возвращает бессмыслицу).
Второй способ - это «перестраховаться» и определить массив фиксированной длины, который является максимальным размером, который вам понадобится.Что-то вроде:
int my_array[65535];
Это выгодно, потому что массивы намного быстрее, чем связанные списки (вам не нужно итерировать для доступа к n-му элементу), но если длина массива сильно варьируется, это может выделить гораздо большепамяти, чем необходимо.Вам решать, что вы предпочитаете.