zoukankan      html  css  js  c++  java
  • C/C++ #include<> 和 #include""的区别

    我们都听过这样的说法:

    使用#include<> 程序会直接到标准函数库中找文件
    使用#include"" 程序会会先从当前目录中找文件,如果找不到会再到标准函数库中找文件

    所以,一般情况下我们引用标准函数库中的头文件时,用#include<>能有更高的效率,但是其实它的查找顺序非常严格:

    1.#include<>

    1.在编译器设置的include路径内搜索;
    2.如果是在命令行中编译,则在系统的INCLUDE环境变量内搜索。

    2 #include”“
    1.在包含当前include指令的文件所在的文件夹内搜索;
    2.如果上一步找不到,则在之前已经使用include指令打开过的文件所在的文件夹内搜索,如果已经有多个被include的文件,则按照它们被打开的相反顺序去搜索;
    3.如果上一步找不到,则在编译器设置的include路径内搜索;
    4.如果上一步找不到,则在系统的INCLUDE环境变量内搜索。

    所以,要注意的一点就是,如果我们自己写的头文件,而不是标准库函数中的,那么引用这个头文件要使用#include"",而不能使用#include<>,因为我们自己写的头文件并不在编译器设置的路径内,使用#include<>会提示无法找到。

    参考链接:

    C/C++ #include<> 和 #include""的区别

  • 相关阅读:
    AtCoder Grand Contest 015 题解
    AtCoder Grand Contest 014 题解
    AtCoder Grand Contest 013 题解
    AtCoder Grand Contest 012 题解
    AtCoder Grand Contest 011 题解
    AtCoder Grand Contest 010 题解
    AtCoder Grand Contest 009 题解
    NOIP2017 Day2 题解
    博客园主题备份
    多项式全家桶
  • 原文地址:https://www.cnblogs.com/2018shawn/p/14076597.html
Copyright © 2011-2022 走看看