我正在使用 NIF 进行 C-Erlang 集成,但在初始化 aBinary
并添加指向其数据的 char * 时遇到了一些麻烦。
我正在这样做:
ErlNifBinary *output_binary;
enif_alloc_binary(500, output_binary);
strcpy(output_binary->data, "Here is a string");
return enif_make_binary(env, output_binary);
关于我做错了什么有什么想法吗?我遇到了分段错误。
更新:我摆脱了分段错误。但现在我无法返回包含String
.
enif_make_string
与 binary.data 一起使用,我在 Erlang 上得到了一个字符串。但是当我尝试使用enif_make_binary
二进制文件时,我得到了这样的<<0,0,0,0,0,0,0,0,112,40,129,20>>
东西我需要做什么来转换?