0
我正在用C++编写一个程序,它需要调用一个在开源C程序中编写的子程序。 C文件被称为shd.c. (程序中没有shd的头文件)。 C程序本身通过gcc编译器编译得很好,而C++程序在使用g ++编译时没有引用C文件就可以正常工作。C/C++用不同的编译器编译程序的不同部分
但是,g ++非常不喜欢C程序,当我用g ++自己编译shd时给出了数百个错误和警告,而且当我包含C文件时编译C++程序时遇到同样的问题。
截至目前,我包括C文件的方式是这样的:
extern "C"{
#include "shd"
}
无论如何,我认为我在这里唯一的选择(纠正我,如果我错了)是编译C和C++文件,分别使用不同的编译器。有没有办法做到这一点?如果这有什么不同,我还会指出我使用的是NetBeans。
像'make'这样的构建工具可以针对不同的语言调用不同的编译器。 – chrisaycock
使用g ++编译C代码时会得到什么样的错误消息? – unxnut