为什么在vs 中用include<iostream.h>不行,而include<stdio.h>可用
来源:互联网 发布:阿里云 cdn 配置 编辑:程序博客网 时间:2024/05/01 03:09
1、要区分标准C的库和标准C++的库。iostream是C++的库,stdio.h是标准C的库。
2、新的C++标准摒弃了.h形式的头文件,所以在vs2005里面是没有iostream.h的头文件的。
3、在早期的vs版本,比如VC6.0,用的还是老版本的C++标准库,例如iostream.h,并且当时标准库也没有引入名字空间。因此直接#include 是可以的。但到了vs2005,使用了新的C++标准库,只能用#include 。
4、名字空间里可以包含很多东西,比如函数名、标识符、数据类型等等。新的C++标准把标准库中的名字都放入了std名字空间,因此在#include 之后,还必须使用标准库的名字空间std,才能使用标准库里的类和函数,也就是必须 using namespace std;
5、对于C的标准库,例如,stdio.h,没有名字空间的概念,因此直接包含后即可使用。
6、新的C++标准库为了统一以前的C标准库,将原来c的标准库也放入了std名字空间,并把原来的C标准库去掉了.h后缀,前面加上字母“c”,例如stdio.h就变成了cstdio,使用时为#include ,其内容和#include 相同,但是要额外使用名字空间std,也就是using namespace std;
7、因此,对于新的C++标准库,没有了.h形式的头文件,例如iostream,在包含了头文件以后,必须使用std名字空间才能使用库中的内容。
对于C标准库,有两种使用方法,一种是用老的.h形式,例如stdio.h直接包含就可以了;另一种就是用C++的统一形式,例如cstdio,和C++标准库一样,包含了以后还要加上using namespace std;才能使用。建议采用后面统一的形式,比如你要同时使用C和C++的库,可以这样写:
- 为什么在vs 中用include<iostream.h>不行,而include<stdio.h>可用
- 为什么在vs 中用include<iostream.h>不行,而include<stdio.h>可用
- 为什么在vs 2005中用include “iostream.h”就不行,而用include "stdio.h"就可用
- 关于#include<stdio.h > 和 #include<iostream>
- #include "stdio.h";#include <stdio.h>#include <iostream>;#include <iostream.h>区别
- #include<iostream>、#include<iostream.h>和#include<stdio.h>的根本区别
- 为什么在写C++程序时预编译头只能是#include<iostream>而不能是#include<iosteam.h>
- #include stdio.h #include cstdio
- include <stdio.h>
- include "stdio.h"
- include<stdio.h>
- include<stdio.h>
- include "stdio.h"
- #include "stdio.h"
- #include <stdio.h>
- #include<stdio.h>
- #include<iostream>与#include<iostream.h>
- #include<iostream.h>与 #include<iostream>
- 64位win7环境下进行Scrapy安装
- css
- VS2015中MFC编译运行错误——无法解析的外部符号
- 操作系统学习笔记:xv6 Barriers
- 7 纹理
- 为什么在vs 中用include<iostream.h>不行,而include<stdio.h>可用
- 苏嵌26 16.12.03
- 51nod-1262 扔球(欧拉函数)
- 数据结构(关于串的KMP匹配算法及其改进)
- 关于Xutils框架出现无法访问HttpRequestBase 找不到org.apache.http.client.methods.HttpRequestBase解决方案
- ansible 切换用户建立ssh连接并使用sudo 权限执行程序
- poj_1260 Pearls(dp)
- 哈尔滨理工大学软件学院ACM程序设计全国邀请赛(网络同步赛)L Lucky Number By Assassin 杀人的模拟题
- 16哈理工新生赛 A 棋盘村 (dp)