【发布时间】:2017-01-20 05:12:39
【问题描述】:
'msgsnd'函数实际声明如下
int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg);
但是,有一个 perl 程序以下列方式使用
msgsnd($qid, pack("l! l! a*", $type, $type, $cmd), 1)
这只有 3 个参数。这是如何工作的?
【问题讨论】:
-
当为其他语言的库编写 Perl 绑定或实现时,通常会对接口进行更改。通常事情不需要传递,或者如果 Perl 的实现是面向对象的,则可以在幕后传递。但是,这个问题甚至没有提供问题的基本描述。它太宽泛了,没有关注代码问题,而是关注软件库的操作。
-
This 是这样工作的。
-
int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg);看起来不像 Perl...
标签: perl message-queue