【发布时间】:2011-11-10 22:22:06
【问题描述】:
在哪里或如何找到正确的 C 头文件以包含在 C++ 程序中以获得在符合 POSIX 的环境中声明的 C 函数的声明?
我问这个是因为我需要在我的 C++ 程序中使用 open() 系统调用来实现我的目的,所以我最初尝试包含有关 open() 的在线文档中提到的标头(在 SYNOPSIS 部分中) ,它们是sys/stat.h 和fcntl.h。但是,在尝试编译时,编译器抱怨 open() 没有声明。在google上搜索后,我发现另一种可能是unistd.h。我尝试使用该标头并编译了程序。所以我回到 POSIX 文档阅读更多关于 unistd.h 的信息,以检查那里是否提到了 open(),但我找不到任何关于它的信息。
我做错了什么?为什么 POSIX 文档和我的 GCC 环境之间存在这种差异?
【问题讨论】: