Quote Originally Posted by mitakeet
There are not very many environments where there is a lack of capable C++ compilers, though I can't speak about mainframes. C++ compilers do better type checking (even on C code) and almost all warnings/errors you get from a C++ compiler are likely bugs in your C code. Just stick with ANSI C and use a C++ compiler while doing your development and testing and when you port it to your mainframe environment you should not have any problems at all.
FYI, I happen to work in such an environment. Coding for the pluto mainboard which you can find in casino slot machines for instance. Code gets compiled to 4MB PROMS that you stick onto the board.
We use an altered gcc.

In general C is considered more platform independant.
C++ often has a hard time to be platform independant because it's so big. Many compilers don't include some kind of feature or have bugs