我在 Go 中有一个函数:
func login(user *C.char) *C.char {
cstr := C.CString("Hello World")
defer C.free(unsafe.Pointer(cstr))
return cstr
}
我的红宝石代码如下
module GoLib
extend FFI::Library
ffi_lib './golib.so'
attach_function :login, [:string], :string
end
GoLib.login("User1") #=> "p\x9A\xA0\xDB\x16V"
它不会作为红宝石字符串返回。我该如何解决这个问题?
呼唤远方
相关分类