头文件包含命令两种形式

#include命令

有两种形式:#include <文件名>

                    #include "文件名"

为什么要有这两种不同的写法呢?有何区别?


(1)关于头文件的知识:

       C++自带的头文件——

      C++已经有一些编写好的头文件(比如标准函数库等等),它们存放在VC++的Include文件夹里。

      编译器到这个文件夹里去找对应的文件——有既定命令语句:#include <文件名>

  

      用户自定义的头文件——

       另外,随着语言的发展,我们也会自己编写头文件,当然就不在那个Include文件夹里。


(2)命令含义::

   #include <文件名> ——   到包含文件夹:Include文件夹里去找对应的文件

   #include "文件名"   ——   先在当前文件所在的目录搜索是否有符合的文件,如果没有再到Include文件夹里去找对应的文件


(3)区分的原因:

 最初,都是用 #include <文件名> 命令的

 后来,有了用户自定义的头文件,这样写,就会出错,因为,用户自定义的头文件不在那个include文件夹中

 所以改为:包含C++提供的头文件时,应该使用尖括号。

                 包含自定义的头文件时候,使用双引号#include "文件名":    


 


(4)保险的做法

  一律使用#include "文件名"命令,一定是正确的,最保险


(5)题外话——关于最新的c++标准对头文件包含命令的规定


最新的C++标准中,包含C++提供的头文件并不是写作#include <文件名> ,如#include <iostream.h>的写法是过时的。正确的写法是#include <iostream>,并且要使用std名字空间(using namespace std;)。名字空间也称为命名空间,主要是用来避免大型程序开发中的标志符冲突。

尽管以上两种#include命令都可以正确地被VC++识别了,但是它们却并不符合C++的标准。

如何按照标准来包含一个头文件?

标准规定,包含C++提供的标准头文件或系统头文件时应使用尖括号,包含自定义头文件时可使用双引号。

 所有程序的#include命令将按标准来书写。


eg:
包含头文件时如:写#include <iostream>,但是没有using namespace std;,
这样会出错,因为没有使用std名字空间,不能正常实现输入输出功能
所以要是按照这样的写法,必须要使用std名字空间。



(7)总结:
C++提供的标准头文件或系统头文件时应使用尖括号,包含自定义头文件时可使用双引号;必须要使用std名字空间。
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值