如何从 Ruby 中的 C 代码返回一个数组?我正在使用内联 v3.12。
require 'inline'
class Object
inline(:C) do |builder|
builder.c "
VALUE some_method(VALUE s) {
int s_len = RARRAY_LEN(s);
int result = 0;
int i = 0;
VALUE *s_arr = RARRAY_PTR(s);
for(i = 0; i < s_len; i++) {
result += NUM2INT(s_arr[i]);
}
return rb_float_new(result); // HERE I NEED ARRAY RETURN !!!!!
}"
end
end
a = Object.some_method([1,2,3,4])
puts a
- 项目清单
- 项目清单
- 项目清单
- 项目清单