c++ - 在 C++ 中包含非标准 C 头文件

标签 c++ c gcc include

我需要在我的 C++ 代码中包含一些 c 头文件(非标准头文件)以供 gcc 编译。 C 头文件 (foo.h) 支持:

#ifdef __cplusplus 
extern "C" {  
#endif 

的末尾也类似。 C++ 代码包含“foo.h” 我相信我应该能够只包含 header (foo.h) 并创建 .h 文件中定义的结构实例。

我无法编译源代码。编译器似乎将 c 代码视为 C++ 代码。我看到诸如

之类的错误

error: expected constructor, destructor or type conversion before "("

我做错了什么吗?我听取了以下建议: http://www.parashift.com/c++-faq-lite/mixing-c-and-cpp.html

我还需要做什么,才能告诉 C++ 编译器“期望并编译为 C 代码”?

最佳答案

谢谢大家的回复!

我的问题是我没有以正确的顺序包含所有需要的头文件。 我都准备好了。

关于c++ - 在 C++ 中包含非标准 C 头文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2913731/

相关文章:

c - stat() 得到组名是root

gcc - 调试选项 -g 如何更改二进制可执行文件?

c++ - gdb 在检查断点处的条件时失败

c++ - 如何在 C++ 中制作可比较的类

c++ - 我可以让 Visual Studio 将调试 DLL 创建为 XXXd.DLL 而不是 XXX.DLL 吗?

c++ - 使用命令行参数创建快捷方式

c - C 中未读取整个文件(意外出现 EOF)

c - 反转c中的单词

c++ - 在没有root的情况下在linux下编译boost

macos - 通过自制软件的 gcc 没有 --without-multilib 选项