【发布时间】:2021-12-28 19:49:17
【问题描述】:
我正在用 C 创建一个 DLL,并尝试调用函数来获取结构返回值。
如果我对函数返回使用标准变量(int、float、char、char*)效果很好。
我的结构:
typedef struct
{
int success; /** Success to call a function **/
char returned[32]; /** Return of the called function **/
} DLL_RETURN_t;
功能:
DLL_RETURN_t* getData() {
DLL_RETURN_t* test;
test->success = 1;
strcpy((char*)test->returned, "Simple Test");
return test;
}
我使用导入共享库 LabVIEW 工具来导入 DLL 并创建 VI。
创建的 VI 有一个整数输出,但我希望是一个簇或一个指针。
【问题讨论】:
-
从函数调用返回的指针的生命周期绑定到函数,因此一旦函数完成执行,它将无效