It all depends on what you're doing. For example, if the input was a path/filename, you can just use the : as a deliminator because it cannot be used in a filename/path. It is usually easy to look at your project and determine what is going to be used and what is not going to be used. The chance that a person would use the deliminator can be easily remedied using a check if you really feel like it could be an issue.

I don't know what you mean about making a table for each use. Each use of what? Unless you free it (or close mIRC), you can use it over and over. If you're using an array, you also can use it over and over. In both cases, you have to make the table/array. In both cases, you can use it as long as it's still made. I can't see any difference in how one is more "irritating" to use. If you have a *real* example rather than just something made up that shows how one is significantly better than the other, I'd like to see it. As I've said, I have not seen any examples of what someone might actually use (not these things that say "blah blah" or whatever) that show any significant differences.