gpt4 book ai didi

gcc - 如何控制 gcc/g++ 自动包含标题的方式?

转载 作者:行者123 更新时间:2023-12-04 13:52:25 25 4
gpt4 key购买 nike

过去,当我尝试将一些在 Mac OS X 上编写的 C++ 代码移植到 Linux 系统时,或者尝试使用较新版本编译针对旧版本 gcc/g++ 编写的代码时,我遇到了麻烦:

似乎某些(较旧的?)版本的 gcc/g++ 会自动为您包含一些头文件。

例如,使用 printf 的代码应该需要 #include <stdio.h> .以及使用 memcpy 的代码应该需要 #include <string.h> .但是根据我使用的 gcc 版本,它偶尔会为我包含这些。

当我忘记包含某些东西然后在我去另一个系统上编译代码之前永远不会出错时,它会造成严重破坏。在这一点上,它是一个在整个项目中运行并修复包含的游戏。

有没有其他人遇到过这个问题?有没有办法强制 gcc 自动包含或不自动包含?或者,有没有办法知道它是什么自动包含?

最佳答案

-包含文件
处理文件就像#include "file"出现在主要源文件的第一行一样。但是,搜索文件的第一个目录是预处理器的工作目录,而不是包含主源文件的目录。如果在那里没有找到,它会像往常一样在 #include "..."搜索链的其余部分中搜索。
如果给出了多个 -include 选项,则文件将按照它们在命令行中出现的顺序包含在内。

http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html

关于gcc - 如何控制 gcc/g++ 自动包含标题的方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3942134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com