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