c语言可以包含C++的头文件吗?怎么用第三方的C++库和头文件

c语言可以包含C++的头文件吗?如何用第三方的C++库和头文件
本帖最后由 wykqhyjs 于 2014-05-27 13:12:03 编辑
关键是要用一个C++的第三方库,自己带C++的头文件,C工程能用吗?

另外,是否需要库头文件和LIB还是DLL有没关系,如果用的是lib ,是不是意味着不需要头文件了
------解决方案--------------------
不要做A语言代码修改为B语言代码的无用功。
也不要做用A语言代码直接调用B语言代码库这样复杂、这样容易出错的傻事。
只需让A、B语言代码的输入输出重定向到文本文件,或修改A、B语言代码让其通过文本文件输入输出。
即可很方便地让A、B两种语言之间协调工作。
比如:
A将请求数据写到文件a.txt,写完后改名为aa.txt
B发现aa.txt存在时,读取其内容,调用相应功能,将结果写到文件b.txt,写完后删除aa.txt,改名为bb.txt
A发现bb.txt存在时,读取其内容,读完后删除bb.txt
以上A可以替换为任何一种开发语言或开发环境,B可以替换为任何一种与A不同的开发语言或开发环境。
除非A或B不支持判断文件是否存在、文件读写和文件更名。
但是谁又能举出不支持判断文件是否存在、文件读写和文件更名的开发语言或开发环境呢?

------解决方案--------------------
要看头文件里都有什么了,
------解决方案--------------------
C应该不能用,内存布局很可能不一样。
------解决方案--------------------
什么样的工程没有关系,主要看编译成什么代码,或者说调用什么编译器(比如gcc还是g++)。
就像vs2008工程里面有个设备编译成C代码还是C++代码。
你要调用C++库就必须将C工程编译成C++代码。而且编译的时候要用到头文件和lib文件。
运行的时候只要dll就可以了。
------解决方案--------------------
用C++包装一层,变成c的标准接口,用动态库,静态库目测不行