Ok, first off, is it better to use strings or char arrays. Strings seem much easier to use, but I'm not sure if easier to use means should use. Do each have their own positives and negatives? If so what are they?
Also, is there an alternative to the cctype functions that works with strings?
In general I would say use strings, as they handle much of the detail you probably don't need to be worrying about anyway. The cctype functions work on single char's, so there is no reason you couldn't use it on a char inside of a string.
Generally, I recommend using std::strings to people, simply because they can expand dynamically, are easier to use, and less error prone. The only exception to that recommendation I can think of is when someone wants to program in C.
As far as I know, unfortunately, there are no alternatives for the cctype functions, although maybe I just never looked around enough. Sorry, although as Zhuge pointed out, you can use them with strings. :(
I agree with zhuge, strings usually fit the purpose, and considering they have the [] operator (which as i saw was the main plus to arrays) i'd say that strings are better. But, everything in the language has it's purpose, otherwise it would have likely been removed by now, so I'm likely just too much of a newbie to know the plus side to char arrays.