gpt4 book ai didi

c - 如何查看包含在#include 中的 header 的位置?

转载 作者:行者123 更新时间:2023-12-02 05:08:05 26 4
gpt4 key购买 nike

我希望在编译时能够看到实际包含了哪个 header 。例如,我有两个非常不同的 check.h 文件(一个是 linux-header 的东西,另一个来自单元测试系统)。

在 gcc 或某些语言命令/宏中是否有一个设置可以显示从哪里包含头文件?

最佳答案

您可以使用 -E旗帜。

gcc -E source.c

这将向您显示“带注释的”预处理源,包括使用 <> 包含的 header 的绝对路径。以及使用 "" 包含的 header 的相对路径.请记住,这将是一个艰难的过程,特别是如果您包含大量系统 header (其中又包括特定于实现的 header 等)。

使用 grep,您可以过滤这些结果:

gcc -E source.c | grep '^# 1 '

# n是描述当前包含文件的行号的注释,始终为 # 1在文件的开头。

关于c - 如何查看包含在#include 中的 header 的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15962020/

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