Здравствуйте. В настоящее время я пытаюсь экспортировать массив из Dll в программу анализа данных на основе C под названием Uniplot.Я могу вызвать DLL и запустить ее, хотя я не могу получить доступ к данным, предоставленным Dll.Я не очень хорош в этом вопросе, но я предполагаю, что это как-то связано с выпуском функции, позволяющей избавиться от указателей или типа данных в целом.
Header.h
// considering export into C application
#ifdef __cplusplus
extern "C"
{
#endif
// prepare functions for later export/import from DLL
#ifdef CALC_EXPORTS
#define CALCDLL_API __declspec(dllexport)
#else
#define CALCDLL_API __declspec(dllimport)
#endif
typedef double t_mda[150];
typedef double t_sda[50];
typedef double t_oda[150];
/*===========================
functions
============================*/
// general function
CALCDLL_API double* CALC (t_mda MDA, t_sda SDA);
....
#ifdef __cplusplus
}
#endif
.cpp
t_oda ODA;
CALCDLL_API double* CALC (t_mda MDA, t_sda SDA) {
...
//data output
return ODA;
}
CALC генерирует данные и сохраняет их в массиве ODA, который я хотел бы использовать в другомприложение.Какие изменения мне нужно сделать, чтобы запустить это?