- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PythonでDLLからの戻り値で文字列の場合を正しく表示させたい)
PythonでDLLからの戻り値で文字列の場合を正しく表示させたい
このQ&Aのポイント
- PythonでDLLからの戻り値で文字列の場合を正しく表示させたい方法について
- VisualStudio2005でDLLを作成し、Python2.6のctypesモジュールを使ってPythonからC++のルーチンを呼び出す方法
- __declspec(dllexport) unsigned char* __stdcall Test(const char *s, int n);とした場合、Pythonで戻り値を見るとint型の数値になる問題
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
http://www.python.jp/doc/2.5/lib/ctypes-return-types.html > デフォルトでは、関数はC intを返すと仮定されます。他の戻り値の型を指定するには、 関数オブジェクトのrestype属性に設定します。 とあります。 上のチュートリアルでも char *を戻り値に持つstrchrを例にしてますね。 lib.Test.restype= c_char_p s = lib.Test("abcdefghijk", 3) print s ではどうでしょうか。 そのDLLをPythonでしか使用しないのなら、下記のような方法でPythonのモジュールにするのも手です。 http://www.python.jp/doc/nightly/ext/ext.html http://www.python.jp/doc/nightly/api/api.html