- 1 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 09:11:41 ]
- LuaやSquirrelなどアプリケーションへの組み込み用途で
使われるプログラミング言語についてのスレッドです まとめwiki(なにか質問する前に必ずみること!) wikiwiki.jp/lua/ その他の参考URLは>2から ■前スレ 【Lua】組み込み系言語総合【Squirrel】 pc12.2ch.net/test/read.cgi/tech/1205208141/ ■過去スレ その3 pc11.2ch.net/test/read.cgi/tech/1160799232/ その2 pc8.2ch.net/test/read.cgi/tech/1063711237/ その1 pc5.2ch.net/tech/kako/1034/10341/1034182349.html
- 140 名前:デフォルトの名無しさん mailto:sage [2009/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 で呼び出せるように登録しておく。
- 141 名前:デフォルトの名無しさん mailto:sage [2009/08/10(月) 21:11:59 ]
- >>139
PyErr_Occurred で存在を確認して、PyErr_Fetch で取得
|

|