我有一个带有sockaddr指针的C函数。
我创建了一个syscall.RawSockaddrInet4对象,但是我不知道如何将对象的地址转换为C.sockaddr指针。
我已经试过了(* syscall.RawSockaddr)(unsafe.Pointer(&sa)),但出现错误:
不能在_Cfunc_lib_connect的参数中使用(* syscall.RawSockaddr)(unsafe.Pointer(&sa))(类型* syscall.RawSockaddr)作为类型* C.struct_sockaddr
任何想法将不胜感激!
int lib_connect(int socks ,
枚举lib_sock_type类型,
const struct sockaddr * srv,
int srv_sz);
最佳答案
谢谢mkopriva!
(* C.struct_sockaddr)(不安全的指针(&sa))
关于go - 调用需要sockaddr的C函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47243350/