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""的区别

  • 相关阅读:
    简单dp总结
    一、极限总结
    最短路径之差分约束
    软工个人总结
    BETA事后总结
    BETA(7)
    BETA(6)
    BETA(5)
    Go 中的字符串相关操作
    Go 中的异常/错误处理
  • 原文地址:https://www.cnblogs.com/2018shawn/p/14076597.html
Copyright © 2011-2022 走看看