Jen taková malá úvaha: co si vytvořit jedno pole znaků, třeba o velikosti 1 kB a do něj sázet svoje stringy tak, že mezi nima použiješ rozumnej oddělovač, třeba jeden ze znaků: | = ~ atd. Předpokládám, že délky jednotlivých řetězců se už měnit nebudou.
Pak už jen pár funkcí: pro uložení novýho řetězce za poslední, získání řetězce z pole atd.