Tag: c ++

Функциональность autodoc Sphinx для Python-C-Extension

У меня возникли трудности с тем, чтобы использовать функции autodoc Sphinx для работы с моим расширением Python C. Возможно ли это с Sphinx? Должен ли я использовать другой инструмент? Я не смог найти никакой информации об этом. Только это ( документация Sphinx через autodoc для модулей C Python ), но этот вопрос остался без ответа. […]

Вернуть C ++ в двойное Python?

Поэтому я использую python для вызова методов в общей библиотеке C ++. У меня проблема с возвратом двойника из C ++ в python. У меня есть игрушечный пример, который показывает проблему. Не стесняйтесь компилировать и опробовать его. Вот код python (soexample.py): # Python imports from ctypes import CDLL import numpy as np # Open shared […]

Почему этот код Boost ASIO не работает с этим клиентом python?

Этот код идентичен исходному асинхронному эхо-серверу udp, но с другим сокетом. Ответ передается и отображается в wirehark, но затем ошибка ICMP Port Unreachable отправляется обратно на сервер. Я пытаюсь понять, почему, потому что все выглядит правильно. Вы можете скопировать этот код непосредственно в исходный файл, например server.cpp. и затем скомпилировать gcc server.cpp -lboost_system Запустите его […]

SWIG – Wring C строка строки в список python

Мне было интересно, как правильно переносить массив строк в C в список Python с помощью SWIG. Массив находится внутри структуры: typedef struct { char** my_array; char* some_string; }Foo; SWIG автоматически переносит some_string в строку python. Что мне следует поместить в файл интерфейса SWIG, чтобы я мог получить доступ к my_array в Python как обычный список […]

Не удается подключиться к абстрактному сокету unix в python

У меня есть сервер, написанный на c ++, который создает и связывается с абстрактным сокетом unix с адресом пространства имен "\0hidden" . У меня также есть клиент, который также написан на c ++, и этот клиент может успешно подключиться к моему серверу. Кстати, у меня нет исходного кода этого клиента. Теперь я пытаюсь подключиться к […]

Boost.Python и Boost.Function

Я хочу обернуть член класса boost::function чтобы его можно было использовать следующим образом: using namespace boost; using namespace boost::python; struct gui_button_t { function<void()> on_pressed; }; class_<gui_button_t>("GuiButton", init<>()) .def("on_pressed", &gui_button_t::on_pressed); А затем в Python: def callback_function(): print 'button has been pressed' button = GuiButton() button.on_pressed = callback_function button.on_pressed() # function should be callable from C++ or […]

Интерфейс C, C ++ с Python

У меня есть код c ++, который стал экспоненциальным. У меня есть ряд переменных (в основном логических), которые необходимо изменить для каждого запуска моего кода (разные условия работы). Я сделал это, используя входы командной строки аргумента для main( int argc, char* argv[]) в прошлом. Поскольку этот метод стал громоздким (у меня 18 различных условий работы, […]

ctypes error Символ атрибутаError не найден, OS X 10.7.5

У меня есть простая тестовая функция на C ++: #include <stdio.h> #include <string.h> #include <stdlib.h> #include <locale.h> #include <wchar.h> char fun() { printf( "%i", 12 ); return 'y'; } компилирования: gcc -o test.so -shared -fPIC test.cpp и используя его в python с ctypes: from ctypes import cdll from ctypes import c_char_p lib = cdll.LoadLibrary('test.so') hello […]

Python ctypes, вызывающий reboot () из libc на Linux

Я пытаюсь вызвать функцию reboot из libc в Python через ctypes и я просто не могу заставить его работать. Я ссылаюсь на страницу man 2 reboot ( http://linux.die.net/man/2/reboot ). Моей версией ядра является 2.6.35. Ниже представлен консольный журнал из интерактивной подсказки Python, где я пытаюсь перезагрузить компьютер. Что я делаю неправильно? Почему не работает ctypes.get_errno() […]

Печать переменной во встроенном интерпретаторе Python

Я написал небольшую программу на C, которая встраивает Python. Я правильно настраиваю его с помощью Py_Initialize () и Py_Finalize () и могу запускать скрипты либо с помощью PyRun_SimpleString, либо PyRun_SimpleFile. Тем не менее, я не знаю, как имитировать поведение собственного интерпретатора Python при печати переменных. В частности: a = (1, 2, 3) print a Отлично […]

Python - лучший язык программирования в мире.