I am sure you get the gist of what I am trying to do; but if not I am trying to have an array of char potentially of different length, these are not user entered input or anything but declared at compile (hence why I am using arrays).
this is not a string in anyway, i am looping through the array to for expression evaluation (from an ASCII input) so I see no reason to include an entire library for this situation.
Why not? You won't be able to tell the difference in overhead and string is far more efficient and easier to use than char[]. And it still supports subscripting across characters.
EDIT: Never mind, I see what you tried.
Anyway, that should work. But I'm no cstring expert, as I said I prefer std::string. With that the code should be relatively simple, although I don't remember how to do construction with an array initializer list. Only if you must use char[] should you really use it for this, you should be fine without.
I think the problem is with the empty subscript. You have charList[2][].
Make it charList[2][10]. This will leave unknown values in your second row after your entry =.
Technically it should be able to determine the second subscript from the number of elements in the initializer list.
@OP: did you read the article Bazzy directed you to? It's the MD array article; it may have some tips or suggestions for this problem.
EDIT: Whoa, there are two MD articles on this forum! I never knew... OP, Disch's article on MD array pitfalls may also come in handy then, since that one explains how to engender them: http://www.cplusplus.com/forum/articles/17108/
If I get this right the real problem here is that C++ does like declaring an arrays of arrays with different depths?
so would it be better to create an array ([2]) of char*
if so how the hell would i go about that. as I said this is not to form a string but an actual list of chars: so if I can help from including string and vectors that would be great