- 论坛徽章:
- 0
|
20可用积分
int ret;
/* Request the service TOUPPER, waiting for a reply */
ret = tpcall("TOUPPER", (char *)sendbuf, 0, (char **)&rcvbuf, &rcvlen, (long)0);
if(ret == -1) {
(void) fprintf(stderr, "Can't send request to service TOUPPER\n");
(void) fprintf(stderr, "Tperrno = %d\n", tperrno);
tpfree(sendbuf);
tpfree(rcvbuf);
tpterm();
exit(1);
}
(void) fprintf(stdout, "Returned string is: %s\n", rcvbuf);
/* Free Buffers & Detach from System/T */
tpfree(sendbuf);
tpfree(rcvbuf);
tpterm();
return(0);
==========================
谁来把这句代码分析一下啊?
ret = tpcall("TOUPPER", (char *)sendbuf, 0, (char **)&rcvbuf, &rcvlen, (long)0);
==========================
我现在知道"TOUPPER"是service的名字。
那么(long)0是不是把0当作long型使用,那么tpcall是什么?是一个函数名吗?这个函数是Tuxedo内置的吗?这个函数有六个参数?在这里分别是"TOUPPER", (char *)sendbuf, 0, (char **)&rcvbuf, &rcvlen, (long)0
==========================
(char *)sendbuf是什么意思?
==========================
(char **)&rcvbuf是什么意思?==========================
[ 本帖最后由 simhare 于 2009-6-26 13:57 编辑 ] |
最佳答案
查看完整内容
tpcall是tuxedo的函数,具体参数个数记不清楚了(char *)sendbuf:传达请求内容的地址(char **)&rcvbuf:设定返回内容的地址(空间应该已申请)这个问题你应该去tuxedo区问
|