您的位置:首页 > 编程语言 > C语言/C++

学习使用C++封装DLL并调用

2017-10-25 13:42 197 查看
一、生成DLL

VS2013——建立win32项目——DLL——完成

[cpp] view
plain copy

//maopao.cpp  

  

#include "stdafx.h"  

  

//关键在于加入这一句,意为将C语言下的程序导出为DLL  

  

extern "C"_declspec(dllexport) void maopao(int *p,int count);  

  

void maopao(int *p,int count)  

  

{  

  

      int temp=0;  

  

      for(int i=1;i<count;i++)  

  

      {  

  

          for(int j=count-1;j>=i;j--)  

  

        {  

  

            if(p[j]>p[j-1])  

  

            {  

  

                temp=p[j];  

  

                p[j]=p[j-1];  

  

                p[j-1]=temp;  

  

            }  

  

        }  

  

      }  

  

f4bc

}  

编译生成,在Debug文件下生成了.dll和.lib两个文件;

二、调用DLL

VS2013——建立win32控制台项目——完成

把第一步生成的.dll和.lib两个文件拷入控制台程序的Debug文件夹下

添加引用:

项目——属性——链接器——常规——附加库目录——添加dll

项目——属性——链接器——输入——附加依赖项——添加lib

[cpp] view
plain copy

#include<iostream>  

  

#include<time.h>  

  

using namespace std;  

  

//将export改为import即导出变导入即可  

  

extern "C"_declspec(dllimport) void maopao(int *p,int count);  

  

int main()  

  

{  

  

  int a[10];  

  

  srand(time(0));  

  

  for(int i=0;i<10;i++)  

  

      a[i]=rand()%50;  

  

  maopao(a,10);  

  

   for(int i=0;i<10;i++)  

  

       cout<<a[i]<<endl;  

  

   getchar();//为方便调试  

  

   return 0;  

  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: