.h的是标准C的头文件,没有.h的是标准C++的头文件,两种都是头文件。
而<iostream>和<iostream.h>在接口和执行上都是不同的<iostream>的各组成都是以STL的形式声明的,然而<iostream.h>的各组成都是声明成全局型的。
不能在一个程序中混淆使用这两个库。做为一种习惯,在新的代码中一般使用<iostream>,但如果你处理的是过去编写的代码,为了继承可以用继续用<iostream.h>旧保持代码的一致性。
名字空间里可以包含很多东西,比如函数名、标识符、数据类型等等。新的C++标准把标准库中的名字都放入了std名字空间,因此在#include <iostream>之后,还必须使用标准库的名字空间std,才能使用标准库里的类和函数,也就是必须 using namespace std;这是遵循c++标准的
<iostream.h>则没有遵循c++标准,不建议使用,<stdio.h>这个是C标准库,不建议C++使用
因此,对于新的C++标准库,没有了.h形式的头文件,例如iostream,在包含了头文件以后,必须使用std名字空间才能使用库中的内容。对于C标准库,有两种使用方法,一种是用老的.h形式,例如stdio.h直接包含就可以了;另一种就是用C++的统一形式,例如cstdio,和 C++标准库一样,包含了以后还要加上using namespace std;才能使用。建议采用后面统一的形式,比如你要同时使用C和C++的库,可以这样写:#include <cstdio>#include <iostream>using namespace std;
#include<iostream>用cin和cout
#include<stdio.h>是C的标准库,用scanf和printf