No, it's not valid for C applications, the iostream.h header declares some classes.

It's simply old C++. New C++ uses the headers without .h.