At least its a good experience with pointers
I'm not sure if you can do this, but try setting all strings to point to an empty dinamically created strings. Just initialize with str_create... all strings in the array, then copy content there. I think it wont work, but its fast to try.
Another way is to use a text object for storing array of strings... Just copy everything you need in them and save.
Using a file is good practise, btw.