[转]关于C与C++中互相调用动态链接库的问题

本文介绍了在Visual C++ 6.0上进行的C和C++动态链接库互相调用的实验。通过实例展示了如何在C程序中调用C++编译的动态链接库,反之亦然,以及如何处理C++编译器对函数声明的处理差异。同时,探讨了类的public成员在动态链接库中的访问问题,提出了通过全局变量的间接访问方法。
摘要由CSDN通过智能技术生成

这两个月埋首基础课程,忽略了技术的学习。间接就冷落了CSDN了。借这次软件工程作业,重新拾回日志工作。

 

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4  

 

问题:

1.写一段C++程序,编译成动态链接库后,C程序怎么访问?

写一段C程序,编译成动态链接库后,C++程序怎么访问?

2.写一个类,编译成动态链接库后,里面的public变量能否访问?

 

对于以上问题,我在Visual C++ 6.0上进行了实验。以下是实验的过程和初步结论。

 

1. 建立动态链接库是在新建工程中选择Win32 Dynamic-Link Library,建立空的工程,在里面添加头文件和实现文件(C程序用.c后缀,C++程序用.cpp后缀),以下给出C程序写的动态链接库代码和C++写的动态链接库代码(只包含一个Add函数):

Case 1C程序的动态链接库代码:

 

//CLib.h

#ifndef C_LIB_H

#define C_LIB_H

extern int __declspec(dllexport) add(int x,int y);

#endif

 

//CLib.c

#include "Clib.h"

int add( int x, int y )

{

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值