Quote Originally Posted by TehCodr View Post
The cin keyword is a stream, and streams can "flood", "drain", and "fail". I'm also looking into alternatives for fstream and sstream.
And the C procedures can lead to security issues: string-based buffer overflows and the like. Not to mention that C strings are already a nightmere to use and that C++ streams are designed to work with C++ STL strings!

IMO, it's crazy to try replacing C++ input and output systems for the C ones unless needed because of external reasons. C works that way because it is designed to work at a minimum level of abstraction, while C++ aims to be something totally different. It's possible one of the positive aspects I recognize in C++, a language I really hate.

Anyway, you better use fgets() instead of scanf() as it's much safer.