如果直接运行DLL工程,会显示You must select a host application to "run" a libary...
好在windows本身提供了一个完美的测试dll
点Add
main就是运行的主函数,注意主函数要用__declspec(dllexport),如下面这个代码
#include<cstdio>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
#define DLL _stdcall
#define DLL_EXPORT __declspec(dllexport)
DLL char* Add(char* A, char *B) {
int i = strlen(A), j = strlen(B);
int t = 0, l = max(i, j), k = l;
char *S = new char[l + 5];
while(i || j) {
if(i) t += A[--i] - '0';
if(j) t += B[--j] - '0';
S[--k] = t % 10 + '0'; t /= 10;
}
if(t) {
for(i = l - 1; i >= 0; i--) {
S[i + 1] = S[i];
}
S[0] = t + '0'; l++;
}
S[l] = 0;
return S;
}
DLL_EXPORT int main() {
freopen("output.txt", "w+", stdout);
printf("%s\n", Add("123", "456"));
return 0;
}
之后的调试,我们首先要把DLL编译完成,之后只要在Tools里面点一下之前设置好的插件,就会运行main函数了
在bin/Debug目录里面就会生成output.txt文件了,注意是dll所在的目录
在Codeblocks中调试DLL时,由于DLL本身不能独立运行,需要选择一个宿主应用程序。Windows提供了一种方法,通过添加主函数并在DLL中声明为`__declspec(dllexport)`来实现。调试过程包括设置主函数和生成输出文件,例如在bin/Debug目录下生成的output.txt。

626

被折叠的 条评论
为什么被折叠?



