2012年10月17日星期三

[PerlChina] Re: XS如何将C的数据结构返回给Perl代码

You need to create one XS function to operate the data. Don't worry. There's lots of rumor about how ugly XS is, though actually XS is the most clean and powerful way to extend a scripting language.

On Tuesday, October 16, 2012 12:16:15 PM UTC-4, twcai wrote:
谢谢。不过ptr貌似只返回一个内存地址,怎么样用perl去获取这个内存地址中的内容呢?

On Wednesday, October 17, 2012 12:00:38 AM UTC+8, greencow wrote:
可以返回一个ptr或ptrobj

On Tuesday, October 16, 2012 3:35:45 AM UTC-4, twcai wrote:
在XS中,像test_struct(定义如下)这样用户定义的结构体,要怎么样以一个Hash的形式返回给Perl代码呢?
浏览了下
perlxstypemap,不过因为时间略急,没能找到答案,只好同时在线等大牛解惑。

typedef enum TEST_BOOLEAN {

    TEST_FALSE,
    TEST_TRUE
}TEST_BOOLEAN;
 
typedef struct test_struct {
    int id;
    double radio;
    const char *name;
    TEST_BOOLEAN exist;
}test_struct;
 
extern test_struct *foo (int id, double radio, const char *name);

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要在网络上查看此讨论,请访问 https://groups.google.com/d/msg/perlchina/-/Vqqup7dS-2UJ
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

没有评论: