1.为什么要嵌入python?这个问题问的好,一般静态语言与脚本语言(不仅仅是python),相互搭配,有两种方式,一种是用c语言写好模块,然后用python去整合,也被称之为扩展python,这样的好处是即有python的灵活性,又有c语言的效率,还有一种就是c语言嵌入python,这样我们就有了一个python解释器了,在游戏编程中常用这种方法,如果你是用静态语言编程,那么修改一些属性,就意为着重新编译,如果程序很大的话,编译是一间令人很烦的事,编译起来非常慢,一种好的设计是把一些属性写在一个初始化文件中,然后在程序中去解析这个属性文件,不过这样还是不够灵活,更加灵活的方式,就是干脆嵌入python(游戏编程中常用lua),这样,游戏更有创造性,更容易扩展。
2.一个"错误的"例子
下面先把C代码写出来,(当然,直接编译肯定是错的,因为我们还有许多东西没设置)
main.c
#include
intmain()
{
Py_Initialize();
PyRun_SimpleString("print "hello,python!"");
Py_Finalize();
return0;
}
#include
int main()
{
Py_Initialize();
PyRun_SimpleString("print "he