Как использовать функцию GetFactList при встраивании CLIPS в язык C

Я хочу использовать функцию GetFactList, чтобы получить факт из CLIPS. В расширенном руководстве написано:

void GetFactList(&returnValue,theModule);
DATA_OBJECT returnValue;
void *theModule;

и первый аргумент — это указатель на объект DATA_OBJECT вызывающего объекта, в котором будет храниться возвращаемое значение.

Я не знаю, какой тип данных я должен использовать в программе C. Мой код такой:

#include "clips.h"
#include <string.h>
main()
{

    char factlist[100];
    InitializeEnvironment();
    Load("constructs.clp");
    Reset();
    GetFactList(&factlist,NULL);
    printf("%s\n",factlist);
    Run(-1L);
}

Он просто выводит нечитаемые коды.

Спасибо за любые идеи и предложения.


person MA Shenjun    schedule 02.04.2014    source источник
comment
Быстрый поиск в Google дает: clipsrules.sourceforge.net/documentation/v630/apg.htm DATA_OBJECT вызывающей стороны, в котором будет храниться возвращаемое значение. Функции с несколькими полями, описанные в разделе 3.2.4, можно использовать для извлечения имен эффектов из списка. Ищите раздел 3.2.4   -  person Gábor Buella    schedule 02.04.2014
comment
Как насчет того, чтобы просто объявить переменную DATA_OBJECT factlist , как это делается в примерах в документации?   -  person Gábor Buella    schedule 02.04.2014
comment
по-прежнему выводить нечитаемый код с объявлением переменной DATA_OBJECT factlist   -  person MA Shenjun    schedule 02.04.2014
comment
Поэтому проверьте соответствующие части документации о том, как получить что-то из DATA_OBJECT.   -  person Gábor Buella    schedule 03.04.2014
comment
Ответил здесь: stackoverflow.com/questions/22835564/   -  person Gary Riley    schedule 07.04.2014