【Lua】組み込み系言語総合 その2【Squirrel】
at TECH
140:デフォルトの名無しさん
09/08/10 18:44:19
>>139
PyErr系はstdoutに出力するけど、これはcで定義されたstdoutではなく
python で定義されたsys.stdout を呼んでいるので、その変数を上書きすれば良い。
sys.stdout 変数を書き換えるコードを最初に実行する。
const char *s = "\
import sys\n\
sys.stdout = MyStdout\n\
class MyStdout:\n\
def write(s):\n\
call_c_function(s)\n";
てやって s を実行すれば、Python側の sys.stdoutが自作クラスで上書きされる。
もちろんあらかじめ自作C関数を call_c_function で呼び出せるように登録しておく。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4277日前に更新/247 KB
担当:undef