Quote Originally Posted by Tomwa
The OP didn't specify whether or not he wanted to comply with any standard and as his original post contained getch I assume he accepts it as reasonable
The original post contain getchar -- which is standard -- not getch.

Quote Originally Posted by Tomwa
As far as initializing variables go a large number of bugs can be avoided by simply initializing data, the risks of unintended values from uninitialized data can be easily be avoided with one statement, a simple initialization can save you tons of debugging later especially since the program may very well work at some times and not at others (depending on if the memory allocated for the data is already the value anticipated).
That is only true if the value used in the initialisation is intended. Otherwise, one invalid value is as bad as another (though admittedly having a null pointer is typically somewhat better than a garbage pointer), regardless of whether you explicitly initialised or just access garbage.