Ниже приведен простой пример встраивания Python в программу на языке C с возможностью получения результата интерпретации.

/*** c2py2.c ***/
#include <stdio .h>
#include<a id="more-36"></a>
<python /Python.h>

int main()
{
	int result;
	PyObject *pstr, *pmod, *pdict;

//инициализация интерпретатора
	Py_Initialize();

	pmod = PyImport_ImportModule("sys");
	pdict = PyModule_GetDict(pmod);

//вычисление выражения из строки
	pstr = PyRun_String("3+4*5",Py_eval_input,pdict,pdict);
//извлечение данных из объекта Python и вывод результата
	PyArg_Parse(pstr,"i",&#038;result);
	printf("%i
",result);

//удаление созданного Python объекта, завершение интерпретатора и выход
	Py_DECREF(pstr);
	Py_Finalize();

    return 0;
}        </python></stdio>

Компиляция программы может быть выполнена аналогично тому, как это было выполнено в предыдущем примере:
gcc c2py2.c -lpython -lm -lpthread -ldl -o c2py2 Аналогично могут быть обработаны данные и других простых типов. Обработка данных более сложных типов будет рассмотрена далее.



Постоянные ссылки

При копировании ссылка на TeaM RSN обязательна!

URI

Html (ЖЖ)

BB-код (Для форумов)

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.