正文

利用SWIG把C函数生成Tcl接口2008-11-11 10:28:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lym51/39338.html

分享到:

Tcl与SWIG   可能大家不是很熟悉swig这个名字,它的全称是Simple Wrapper and Interface Generator.它是干什么用的呢?是用来把C语言子程序包装成一些脚本语言的命令用的.比如,不少人喜欢使用Tcl/Tk来写点界面,但Tcl/Tk的数学功能实在太差,有时候就想自己给它扩充一些数学函数.又比如说,用Perl写个CGI程序,想用一个已经现成的自己编好的C语言子程序来处理用户返回的数据.这时候就用得上swig了. 其实刚才举的那些脚本语言都有自己的扩充接口,比如Perl有XS格式,Tcl/Tk有一套扩充内核用的C语言函数库.例如,要给Tcl扩充一个myfract命令,用来实现阶乘,可以这样做: (1)写一个C语言程序,假设叫做fract.c,内容如下: #include "tcl.h" int Tcl_myfract(ClientData notUsed, Tcl_Interp *interp, int argc, char { int i, j; double res=1.0; char re[30]; if (argc > 2) { Tcl_AppendResult(interp, "wrong args: should be myfract return TCL_ERROR; } if (Tcl_GetInt(interp, argv[1], &i) != TCL_OK) { return TCL_ERROR; } for (j=1;j

阅读(6451) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册