有它返回一些字符串到提供指向C函數的參數:NativeCall。如何獲得一個字符串作爲C函數
void snmp_error(netsnmp_session *sess, int *clib_errorno,
int *snmp_errorno, char **errstring);
的Perl6的版本是:
sub snmp_error(Snmp-session, int32 is rw, int32 is rw, Str is rw) is native("netsnmp") { * };
snmp_error($sess, my int32 $errno, my int32 $liberr, my Str $errstr);
say $errno, " ", $liberr, " ", $errstr;
它返回正確的整數,但不是字符串:
0 -3(STR)
這是一個錯誤還是錯誤?
perl6 -v
This is Rakudo version 2016.12 built on MoarVM version 2016.12
implementing Perl 6.c.
同樣是
This is Rakudo version 2017.09 built on MoarVM version 2017.09.1
implementing Perl 6.c.