如何从 Class 库中 return 一个结构数组到控制台应用程序
How to return an array of structs to Console Application from Class Library
我有一个结构:-
Test.h
typedef struct employees
{
char* name[5];
int empi_id;
};
Test.cpp
我创建了一个函数,我需要在这些结构中存储值。
int Disp()
{
employees e[5];
e[0].empi_id=10;
e[1].empi_id=100;
e[2].empi_id=500;
e[3].empi_id=1000;
e[4].empi_id=5000;
return 0;
}
TestDll.cpp 控制台应用程序:
void main()
{
LoadLibrary(("TestDll.dll"));
int obj = Disp();
}
我需要return这些结构数组到我的控制台Application.I想在我的控制台应用程序中显示分配的值directly.How我应该return吗?可以我将这些结构数组作为函数参数发送,那么我应该怎么做 it.Since 我需要发送 5 个数组。
查看下面的 link 确实让我想到了将值分配给结构,但我无法在我的控制台应用程序中显示这些值。
return an array of structs or an array of struct pointers?
将函数签名更改为
int Disp(employees *) ;
没问题。不正常的是你如何 link 你的 DLL。您可以在启动时加载它(它发生在幕后)或使用 LoadLibray,但这也需要 GetProcAddress。第一种方法更容易。它允许您像加载库一样加载 DLL。
我有一个结构:-
Test.h
typedef struct employees
{
char* name[5];
int empi_id;
};
Test.cpp 我创建了一个函数,我需要在这些结构中存储值。
int Disp()
{
employees e[5];
e[0].empi_id=10;
e[1].empi_id=100;
e[2].empi_id=500;
e[3].empi_id=1000;
e[4].empi_id=5000;
return 0;
}
TestDll.cpp 控制台应用程序:
void main()
{
LoadLibrary(("TestDll.dll"));
int obj = Disp();
}
我需要return这些结构数组到我的控制台Application.I想在我的控制台应用程序中显示分配的值directly.How我应该return吗?可以我将这些结构数组作为函数参数发送,那么我应该怎么做 it.Since 我需要发送 5 个数组。 查看下面的 link 确实让我想到了将值分配给结构,但我无法在我的控制台应用程序中显示这些值。 return an array of structs or an array of struct pointers?
将函数签名更改为
int Disp(employees *) ;
没问题。不正常的是你如何 link 你的 DLL。您可以在启动时加载它(它发生在幕后)或使用 LoadLibray,但这也需要 GetProcAddress。第一种方法更容易。它允许您像加载库一样加载 DLL。