Page 118 - 6734
P. 118
• Виконайте конвертацію бібліотеки: coff2omf.exe
python27.lib python27_.lib.
• Скопіюйте python27_.lib у папку з проектом і переіменуйте
його в python27.lib.
• Виберіть меню Project/Options…/Directories та додайте в
Include path C:\Python27\include
• Додайте до проекту python27.lib та Python.h
#include "Python.h"
main(int argc, char **argv)
{
Py_SetProgramName(argv[0]); // передає argv[0]
інтерпретатору
Py_Initialize(); // ініціалізація інтерпретатора
// виконання команд Python (ніби модуль __main__)
PyRun_SimpleString("import time\n");
PyRun_SimpleString("print
time.localtime(time.time())\n");
Py_Finalize(); // закінчення роботи інтерпретатора
}
ctypes – виклик зовнішніх C-функцій
ctypes – це бібліотека для поступу до зовнішніх C-функцій, яка
забезпечує сумісні з C типи даних і дозволяє виклик функцій з DLL
або розподілюваних бібліотек Unix [14, 19]. Наступна С-функція f
отримує три аргументи (змінну n та вказівники x і A) і повертає
вказівник B. Зауважте, що функція змінює значення за адресами x і
A.
#include <stdlib.h>
float* __declspec(dllexport) f(float* x, int n,
float* A)
{
float *B = (float*)malloc(sizeof(float) * n);
int i;
117