I would guess its because that code is so old and the engine has improved a lot since then, so that is not very efficient code anymore.
NOWADAYS I can think of two very different ways of achieving that same result.
But the one based on my wiki example should should be updated to
STRING** string_array = sys_malloc(sizeof(STRING*) * number_of_elements);
int i=0; for(i=0; i<number_of_elements; i++)
{ string_array[i] = str_create(""); }
//now you can access the string array like this:
str_cpy(string_array[0],"hallo");