>> I thought cin.get() didn't work with strings... or am I wrong?
What kind of strings are you talking about? C++ supports two types of strings: the C-style string that's just an array of char terminated by '\0', and the std::string class. You're correct if you mean the std::string class, otherwise you're wrong. cin.get() is overloaded with the same signature and functionality as cin.getline(), with the one obvious difference that cin.get() does not extract the delimiter character from the stream while cin.getline() does.