64-разрядные целые числа в Cython - PullRequest
4 голосов
/ 11 июня 2010

Я пытаюсь связать библиотеку C ++ (pHash) с Python, используя Cython, но у меня проблемы с некоторыми типами.Функции библиотеки используют «unsigned long long», и я не могу найти способ объявить переменные и параметры с этим типом.Я искал список типов, которые я могу использовать с cdef, но ничего не нашел.Может кто-нибудь указать мне на такой список (если он существует) или иным образом предложить способ использования 64-битных типов в Cython?Спасибо.

Ответы [ 2 ]

4 голосов
/ 11 июня 2010

Я смог использовать как unsigned long long, так и long long прекрасно с cdef.Смотрите, например, мой ответ на этот вопрос здесь .Я просто попытался запустить тот же код там с unsigned long long вместо long long, и он работал просто отлично.Можете ли вы быть более конкретными о том, какие проблемы у вас возникают с этими типами?Может быть, вы могли бы опубликовать некоторый исходный код, который не работает для вас?

3 голосов
/ 11 июня 2010

Вот один из моих ответов, используя unsigned long long с цифоном

Простой вызов Python: самое быстрое побитовое XOR для буферов данных

...