如何在C ++源文件中使用一些Unix头文件?

时间:2018-01-27 05:48:58

标签: c++ c linux

我计划使用一些Linux API来完成C ++语言的网络程序任务。所有Linux API或结​​构都在C头文件中定义,例如<netinet/in.h>,如何在Cpp源文件中正确使用它们?如何使用C头文件中定义的结构? 我应该使用C ++链接规范吗?如:

    extern "C" {
        #include <netinet/in.h>
};

1 个答案:

答案 0 :(得分:3)

Linux中的系统标头已经C++兼容,除了#include之外,您无需执行任何操作。事实上,绝大多数C库都有C++个兼容的标题,因此您只需#include它们就可以了。

有一些例外(例如ffmpeg)。你需要用extern "C" {}包裹的那些。虽然可能无法始终使用原生C标头,只需将其包裹起来,因为C可能包含其他不兼容性。

请点击此处查看使用ffmpeg

的示例