标题：iostream.h
iostream的含义
iostream.h是input output stream的简写，意思为标准的输入输出流头文件。它包含：
（1）cin>>"要输入的内容"
（2）cout<<"要输出的内容"
这两个输入输出的方法需要#include<iostream.h>来声明头文件。
组成
基本类模板iostream（.h）库的基础是类模板的层级结构。类模板以一种与类型无关的方式，提供了这个库的大部分功能。
基本类模板是一个类模板的集合，其中每个类模板有两个参数：字符类型（charT）参数决定处理的元素类型，而特性参数对每个特定的元素类型提供一些额外的特征。
这个类层级结构中的类模板和它们的字符类型的实例相比，名字前面多了前缀basic_。例如，istream由之实例化而来的类模板名为basic_istream，fstream由之实例化而来的类模板名为basic_istream，等等。唯一的例外是ios_base，因为它本身就是类型无关的，所以它并不基于任何类模板，而是一个正规类。
类模板实例iostream（.h）库中集成了两组标准的整个iostream类模板层级结构的实例：一组是面向单字节的，处理char类型的元素；另一组是面向宽字节的，处理wchar_t类型的元素。
面向单字节（char型）的实例可能是iostream（.h）库更为人所知的一部分。  面向单字节的类的名称和关系[1]ios、istream和ofstream等类都是面向单字节的。右图是面向单字节的所有类的名称和关系。
面向宽字节（wchar_t型）的实例的命名规则与面向单字节的实例相同，但所有类和对象名称前有前缀w，例如wios、wistream和wofstream。
标准对象作为iostream（.h）库的一部分，头文件<iostream（.h）>声明了一些用来在标准输入输出设备上进行输入输出操作的对象。
这些对象分为两组：面向单字节的，即常见的cin、cout、cerr和clog；其面向宽字节的对应物，声明为wcin、wcout、wcerr和wclog。
类型iostream（.h）库中的类很少对其成员的原型使用基本类型，而是通常使用根据其实例的特性定义的类型。对默认的char和wchar_t型的实例，类型streampos、streamoff和streamsize分别用以表示位置、偏移和大小。
操纵符操纵符是用来与对流对象进行操作的插入（<<）和提取（>>）运算符一同使用的全局函数。它们通常变更流的属性和格式设置。endl、hex和scientific是一些操纵符的例子。
与iostream的比较
区别iostream.h与iostream是不同的。
#include<iostream.h>是在旧的标准C++中使用。在新标准中,用#include<iostream>。iostream的意思是输入输出流。#include<iostream>是标准的C++头文件，任何符合标准的C++开发环境都有这个头文件。还要注意的是：在VC编程时要添加：
using namespace std;
其原因是：后缀为.h的头文件C++标准已经明确提出不支持了，早些的实现将标准库功能定义在全局空间里，声明在带.h后缀的头文件里，C++标准为了和C区别开，也为了正确使用命名空间，规定头文件不使用后缀.h。因此，当使用<iostream.h>时，相当于在C中调用库函数，使用的是全局命名空间，也就是早期的C++实现；当使用<iostream>的时候，该头文件没有定义全局命名空间，必须使用namespace std；这样才能正确使用cout。
关系<string.h>是旧的C头文件，对应的是基于char*的字符串处理函数；<string>是包装了std的C++头文件，对应的是新的string类；<cstring>是对应旧的C头文件的std版本。而<iostream.h>和<iostream>的关系，类似于<string.h>和<cstring>的关系，实现的功能是相同的，主要是是否使用命名空间std的区别。
使用建议如果你的编译器同时支持<iostream>和<iostream.h>，那使用#include<iostream>，得到的是置于命名空间std下的iostream库的元素；如果使用 #include<iostream.h>，得到的是置于全局空间的同样的元素。在全局空间获取元素会导致名字冲突，而设计名字空间的初衷正是用来避免这种名字冲突的发生。还有，打字时<iostream>比<iostream.h>少两个字，所以通常来说，建议使用<iostream>。
vc中iostream.h的内容
/***
*iostream.h - definitions/declarations for iostream classes
*
* Copyright (c) 1990-1997, Microsoft Corporation. All rights reserved.
*
*Purpose:
* This file defines the classes, values, macros, and functions
* used by the iostream classes.
* [AT&T C++]
*
* [Public]
*
****/
#if _MSC_VER > 1000
#pragma once
#endif
#ifdef __cplusplus
#ifndef _INC_IOSTREAM
#define _INC_IOSTREAM
#if !defined(_WIN32) && !defined(_MAC)
#error ERROR: Only Mac or Win32 targets supported!
#endif
#ifdef _MSC_VER
// Currently, all MS C compilers for Win32 platforms default to 8 byte
// alignment.
#pragma pack(push,8)
#include <useoldio.h>
#endif // _MSC_VER
/* Define _CRTIMP */
#ifndef _CRTIMP
#ifdef _DLL
#define _CRTIMP __declspec(dllimport)
#else /* ndef _DLL */
#define _CRTIMP
#endif /* _DLL */
#endif /* _CRTIMP */
typedef long streamoff, streampos;
#include <ios.h> // Define ios.
#include <streamb.h> // Define streambuf.
#include <istream.h> // Define istream.
#include <ostream.h> // Define ostream.
#ifdef _MSC_VER
// C4514: "unreferenced inline function has been removed"
#pragma warning(disable:4514) // disable C4514 warning
// #pragma warning(default:4514) // use this to reenable, if desired
#endif // _MSC_VER
class _CRTIMP iostream : public istream, public ostream {
public:
iostream(streambuf*);
virtual ~iostream();
protected:
iostream();
iostream(const iostream&);
inline iostream& operator=(streambuf*);
inline iostream& operator=(iostream&);
private:
iostream(ios&);
iostream(istream&);
iostream(ostream&);
};
inline iostream& iostream::operator=(streambuf* _sb) { istream::operator=(_sb); ostream::operator=(_sb); return *this; }
inline iostream& iostream::operator=(iostream& _strm) { return operator=(_strm.rdbuf()); }
class _CRTIMP Iostream_init {
public:
Iostream_init();
Iostream_init(ios &, int =0); // treat as private
~Iostream_init();
};
// used internally
// static Iostream_init __iostreaminit; // initializes cin/cout/cerr/clog
#ifdef _MSC_VER
// Restore previous packing
#pragma pack(pop)
#endif // _MSC_VER
#endif // _INC_IOSTREAM
#endif /* __cplusplus */