You do not need to free and allocate again if you just want to put different values in the variables. In fact, when the value inside malloc() is a constant, there's no reason why you can't just use a char array, as described above. These variables are globals anyways, so there should be absolutely no difference. If there is, it's probably because you are going beyond the end of the array - and using malloc/free, you may have some small margin, which you don't get with the fixed size array [or at least, there will not be any BIG gaps].
--
Mats

