【问题标题】:How to find the relevant header file?如何找到相关的头文件?
【发布时间】:2019-05-05 16:24:40
【问题描述】:

在 C++Builder 10.3 中,我有一个带有 fopen() 函数的代码。我知道这个函数是在stdio.h 中声明的。在我的代码中,此标头未明确包含,但我猜隐含在Vcl.h 中。试图确认它,我打开了Vcl.h,但没有找到stdio.h。相反,我发现了许多其他头文件。有没有办法找出stdio.h 文件的隐藏位置?

【问题讨论】:

  • 它应该在您安装的包含目录中。如果您收到错误消息,您就知道 vcl.h 不包含 stdio.h。否则它可能是。
  • 为什么不用borland/embarcadero/VCL原生FileOpen,FileSeek,FileRead,FileWrite,FileClose二进制文件访问?此外,所讨论的fopen 也可以位于与stdio 不同的标题中...无论如何,最终它会使用windows.h 包含树中的一些内容,因为文件访问是操作系统功能。如果操作系统不同,标题会有所不同。
  • @Spektre:fopenstdio.hcstdio 中。它不应该(也不应该)在另一个标题中定义:en.cppreference.com/w/cpp/io/c/fopen。这不依赖于操作系统。 实现 依赖于操作系统,但这无关紧要。但是你提到的函数,比如FileOpen不是 VCL,它们是 Windows 特定的。

标签: header-files c++builder


【解决方案1】:

由于新编译器出现问题,请首先确保您使用“经典 Borland 编译器”。然后在文本编辑器中写fopen。按CRTL + 左键单击fopen,它将打开stdio.h。就我而言,它位于 C:\Program Files (x86)\Embarcadero\Studio\20.0\include\windows\crtl 文件夹中。

【讨论】:

  • 您能谈谈新编译器的问题吗?我对此一无所知。我会澄清我原来的问题。我不是在寻找“stdio.h”在我的驱动器上的位置。我试图找出对“stdio.h”的引用隐藏在“vcl.h”中的位置。
  • 那么你的问题需要纠正。新编译器在 IDE 上存在很多问题,主要是 Intellisense、代码完成等问题。预计 10.3.2 版本会修复。
  • @maksim:那么您的问题措辞不正确。我还以为您试图找出 stdio.h 在您的文件系统上的位置。
猜你喜欢
  • 1970-01-01
  • 2020-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-28
  • 2012-08-27
相关资源
最近更新 更多