c语言 不允许 dllimport 函数 的定义 怎么办

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言 不允许 dllimport 函数 的定义 怎么办相关的知识,希望对你有一定的参考价值。

源代码:
dll.h

#ifndef _DLL_H_
#define _DLL_H_

#if BUILDING_DLL
# define DLLIMPORT __declspec (dllexport)
#else /* Not BUILDING_DLL */
# define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */

DLLIMPORT int x(int a,int b);

#endif /* _DLL_H_ */

-----------------------------------------------------------------------------
dllmain.c
/* Replace "dll.h" with the name of your header */
#include "dll.h"
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>

DLLIMPORT int x(int a,int b)

int c;
c=a+b;
return c;


BOOL APIENTRY DllMain (HINSTANCE hInst /* Library instance handle. */ ,
DWORD reason /* Reason this function is being called. */ ,
LPVOID reserved /* Not used. */ )

switch (reason)

case DLL_PROCESS_ATTACH:
break;

case DLL_PROCESS_DETACH:
break;

case DLL_THREAD_ATTACH:
break;

case DLL_THREAD_DETACH:
break;


/* Returns TRUE on success, FALSE on failure */
return TRUE;

错误:

IntelliSense: 不能定义声明“dllimport”的函数
error C2491: “x”: 不允许 dllimport 函数 的定义
怎么解决?

参考技术A 这样肯定不行的,年还是好好看看dllimport的定义吧。http://baike.haosou.com/doc/3448913-3629261.html

以上是关于c语言 不允许 dllimport 函数 的定义 怎么办的主要内容,如果未能解决你的问题,请参考以下文章

C语言 关于调用函数出现error 不允许 dllimport的问题

不一致的 dll 链接和 dllimport 静态数据成员的定义不允许

编程中系统允许对库函数重新定义吗?

Qt5 - Windows:不一致的 dll 链接错误和 dllimport 静态数据成员的定义不允许

C#调用C/C++的dll,一个库中包括多个函数,每调用一个函数都要用DllImport加载吗?求大神

object _c 语言可以在函数中再定义函数吗