求救~Go 调用dll,如何传递double 型的参数?(搜寻过解决方式,math.Float64bits似乎無效?)

garyjywu · · 1274 次点击
楼上两位分析的结果有问题, 1.内存地址, 调用DLL传递double明显是栈传递, 这个一般来说不需要申请内存 2.这个GC也说明不了为啥float32是可以的 但是float64不行. 别把GC看的那么实时性, 就算GC了也不至于传递个0过去. 有可能是个随机数而不是自己想要的数据这才是GC可能的结果
#7
更多评论
小声提示一句, 对于异构的系统,如果不是webservice, 那么最好的方案是传输字符串, 这样对发送方和接收方都很友好. 随便你怎么marshal 和unmarshal
#1
**因为是第三方的dll 无法修改,考虑到後續跨平台需求,所以其实是用Python(64 bit)当clinet,golang(32 bit) 当server端來调用第三方dll(32 bit)作使用 有点麻烦~** :joy:
#2