C++ iostream和iostream.h的区别

我们都知他是文件头的参数,C和C++的区别,但我不知怎么区分,大家帮下,列的越多越好!!

#include <iostream.h>非标准输入输出流

#include <iostream>标准输入输出流

C++中为了避免名字定义冲突,特别引入了“名字空间的定义”,即namespace。

当代码中用<iostream.h>时,输出可直接引用cout<<x;//<iostream.h>继承C语言的标准库文件,未引入名字空间定义,所以可直接使用。

当代码中引入<iostream>时,输出需要引用std::cout<<x;如果还是按原来的方法就会有错。

iostream.h是input output stream的简写,意思为标准的输入输出流头文件。它包含:

(1)cin>>"要输入的内容"

(2)cout<<"要输出的内容"

这两个输入输出的方法需要#include<iostream>头文件来声明。

iostream 库的基础是两种命名为 istream 和 ostream 的类型,分别表示输入流和输出流。流是指要从某种 IO 设备上读出或写入的字符序列。

扩展资料:

iostream和iostream.h的用法

使用<iostream>和命名空间 

#include <iostream> 

using namespace std; 

int main() 

cout<<"<iostream> need to use namespace std!/n"; 

return 0; 

输出: 

<iostream> need to use namespace std! 

Press any key to continue

使用<iostream.h>,不引入命名空间 

#include <iostream.h> 

//using namespace std; 

int main() 

cout<<"<iostream> need to use namespace std!/n"; 

return 0; 

输出: 

<iostream> need to use namespace std! 

Press any key to continue

参考资料:百度百科——iostream.h
参考资料:百度百科——iostream

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-04
#include <iostream.h>非标准输入输出流
#include <iostream>标准输入输出流

C++中为了避免名字定义冲突,特别引入了“名字空间的定义”,即namespace。
当代码中用<iostream.h>时,输出可直接引用cout<<x;//<iostream.h>继承C语言的标准库文件,未引入名字空间定义,所以可直接使用。
当代码中引入<iostream>时,输出需要引用std::cout<<x;如果还是按原来的方法就会有错。
使用<iostream>时,引入std::有以下方法:

1.
using namespace std;
cout<<x;
2.
using std::cout;
cout<<x;
3.
最基本的std::cout<<x;

这回你该知道为什么通常用#include <iostream>时,
要用using namespace std;了吧。如果你不用这个,就要在使用cout时,用后两种方法了。
其他头文件也是同样的道理。
(有“.h”的就是非标准的,C的标准库函数,无“.h”的,就要用到命令空间,是C++的。还有一部分不完全是有“.h”和没“.h”的差别。例如:math.h和cmath)本回答被提问者采纳
第2个回答  2020-03-20
有“.h”的就是非标准的,是C的标准库函数,80年代的玩意儿早就不用了,也不建议再用。
无“.h”的,就要用到命令空间,是C++的。
旧的不在std空间 新的大部分在std空间。
通常用#include <iostream>时,要用using namespace std;就是因为旧的iostream.h头文件不需要声明空间直接可以使用cin和cout的关键词,而新的iostream则需要空间指定以划分,所以需要声明指定其空间。

C++中新定义的方法都是有名字空间的 比如cout就属于std名字空间 如果include头文件的时候加上.h,默认会using namespace 否则需要自己加上 using namespace XXX 对于C中已经定义的方法如printf,没有影响的

iostream.h是包含输入/输出流处理的头文件,iostream就什么都不是了
但用iostream要加名词空间namespace
第3个回答  2009-09-02
看起来挺深奥,其实很简单。
它们是两个不同的文件,编译器的代码库里都可以找到的。实在不知道怎么找就搜索文件名中包含 iostream 的文件。
理论上 iostream 中会有 #include<iostream.h> 的类似代码。

如果想区分它们,建议看一下两个文件。初级选手可能看不懂,但至少可以了解它们定义的东西是不同的。
第4个回答  2019-06-11
#include<iostream.h>非标准输入输出流
#include<iostream>标准输入输出流
C++中为了避免名字定义冲突,特别引入了“名字空间的定义”,即namespace。
当代码中用<iostream.h>时,输出可直接引用cout<<x;//<iostream.h>继承C语言的标准库文件,未引入名字空间定义,所以可直接使用。
当代码中引入<iostream>时,输出需要引用std::cout<<x;如果还是按原来的方法就会有错。
使用<iostream>时,引入std::有以下方法:
1.
usingnamespacestd;
cout<<x;
2.
usingstd::cout;
cout<<x;
3.
最基本的std::cout<<x;
这回你该知道为什么通常用#include<iostream>时,
要用usingnamespacestd;了吧。如果你不用这个,就要在使用cout时,用后两种方法了。
其他头文件也是同样的道理。
(有“.h”的就是非标准的,C的标准库函数,无“.h”的,就要用到命令空间,是C++的。还有一部分不完全是有“.h”和没“.h”的差别。例如:math.h和cmath)
相似回答