iostream.h
is not part of the standard C++ library whereas iostream
is. Names in iostream.h
are not in the std
namespace, whereas those in iostream
are. By issuing the directive using namespace std
after including iostream
, all names defined there (and in any other standard library includes) are brought into the global namespace. That is usually not a good thing, but it does provide some level of equivalence between the standard and non- or pre-standard versions.
As far as claiming that they are "the same" as each other, this is unlikely. iostream
adheres to the standard, and will have evolved w.r.t. iostream.h
. This is particularly true if you consider the C++11 standard.