При инициализации index
вы никогда не устанавливаете next
, поэтому это ложное значение указателя. Вам нужно что-то вроде:
Station *newStation = new Station;
index = newStation;
index->name = indexName;
index->next = NULL; /* must be initialized */
Кроме того, я не уверен в ваших намерениях с current = index->next;
. Однако, это, вероятно, не то, что вы делаете отступ.
Конечно, вы также захотите добавить новые станции в список, но я предполагаю, что вы ждете этого позже.