c/c++语言开发共享和“stdio.h”有什么区别?


可能重复:
#include 和#include“filename”有什么区别

在这两种情况下都没有错误……它们之间有什么区别吗?

    在标准C库位置搜索,而"stdio.h"也在当前目录中搜索。

    理想情况下,您可以将<...>用于标准C库,将"..."用于您编写并存在于当前目录中的库。

    指定第二个版本首先在实现定义的位置搜索,然后如果找不到该文件,则在与<...>版本相同的位置搜索,该版本搜索通常由-I命令行指定的路径选项和内置包含路径(指向标准库和系统头的位置)。

    通常,实现将该位置定义为相对于包含文件的位置。

    <>告诉编译器在库的头文件中查找文件并“”告诉它在应用程序的头文件中查看。

    至于为什么它们都适合你,也许你的编译器也会在库头文件中查找文件名,以防它们在你的库中找不到。

    当你想说:“在系统的include目录中查找具有此名称的文件”时,可以使用#include。 当你想说:“在我自己的应用程序的include目录中查找具有此名称的文件时,使用#include”doublequoted“;但是,如果找不到它,请查看系统的include目录”。

    我的“”编译器首先搜索你的.c文件所在的本地目录中的头文件

    而在<>编译器的情况下只搜索头文件夹

    #include 适用于系统头文件,而#include "something.h"适用于您自己程序的头文件。 在通常的系统目录(以及-I参数包含的目录)中搜索系统头,在当前目录中搜索头,然后在系统头中搜索相同的位置。

    见https://gcc.gnu.org/onlinedocs/gcc-2.95.3/cpp_1.html#SEC6

    对于我使用的编译器,“…”开始在与正在编译的源文件相同的目录中查找包含文件,然后是包含路径。 在include路径中包含<...> start,跳过当前die,除非它在include路径中。

    通常标准头文件由<>括起,其他用户特定文件用“。”指定。

    不同之处在于开发人员生成的头文件用“”括起来。 已包含在系统中的头文件包含在<>中。 如果放置的目录不在编译器的搜索路径中,那么即使<>标头也需要-I指令。

    底线:标题为“”,系统标题为<>

    是指标题(不是头文件
    "stdio.h"指的是源文件。

    标题不一定存在于实现中; 它们的识别方式是实现定义的(通常标题是特定目录上的文件)

    当指令使用" ,将以实现定义的方式搜索源文件,如果找不到,则重新处理该指令,就好像它首先用<>编写一样。

    需要了解更多c/c++开发分享和“stdio.h”有什么区别?,也可以关注C/ C++技术分享栏目---计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享和“stdio.h”有什么区别?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/980165.html

      (0)
      上一篇 2021年12月13日
      下一篇 2021年12月13日

      精彩推荐