- 论坛徽章:
- 0
|
我最近在学习TCL,没有找到关于“用TCL测试C函数”的清晰的解释。不知哪位高人能给咱讲讲。
我现在知道,要在TCL中调用C函数,就必须把C函数做为TCL中的一个command来使用。我写了个C文件(hello.c), 其中,要测试的函数为Hello(), 此函数映射到TCL中的command是“sHello”。可是我不知道,怎样在Tcl中使用它。请各位高人教教我。
#include <tcl.h>;
#include <stdio.h>;
int Hello_Init(Tcl_Interp *interp);
int tHelloCmd(ClientData clientData,
Tcl_Interp *interp,
int argc,
char *argv[]);
int Hello();
int main(int argc, char *argv[])
{
Tcl_Main(argc, argv, Hello_Init);
exit (0);
}
int Hello_Init(Tcl_Interp *interp)
{
Tcl_CreateCommand(interp, "sHello",
tHelloCmd,
(ClientData) NULL,
(Tcl_CmdDeleteProc *) NULL);
}
int tHelloCmd(ClientData clientData, Tcl_Interp *interp,
int argc, char *argv[])
{
int retval = 0;
retval = Hello();
if (retval == 1)
{
printf("SUCCESS!!!" ;
}
else
{
printf("FAILURE !!!" ;
}
return TCL_OK;
}
int Hello()
{
printf("Hello World!\n" ;
return 1;
} |
|