Объект Python Unicode и C API (получение char * из объектов pyunicode)

, я в настоящее время привязываю все свои классы движка C ++ к python для создания сценариев игры. Последняя проблема заключается в том, что когда вы, скажем, превращаете переменную в скрипт в строку типа

string = 'hello world'

, это становится PyUnicodeObject. Затем мы хотим вызвать функцию для этого объекта в сценарии из связанной функции стороны C. PrintToLog (string), в качестве примера, позволяет сказать, что эта c-функция такая же

void PrintToLog( const char * thisString )
{
   //file IO stuff as expected
   myLog << thisString;
   //more stuff involving fileIO
}

Итак, моя привязка должна извлечь char * из PyUnicodeObject, который сначала будет передан питоном моему универсальному обработчику функции, который, в свою очередь, извлечет и скроет объекты pyobject в соответствующий тип c-стороны и передаст его моей функции.

Единственная функция, которую я могу найти, извлекает wchar_t * ... Есть ли способ получить представление ascii, поскольку мы будем использовать только набор символов ascii.

РЕДАКТИРОВАТЬ: Я использую Python 3.2, где все строки являются unicode

10
задан DaneEC117 21 July 2011 в 22:17
поделиться