发送到非本地主机地址时,C++ 中的 Sendto 函数返回无效参数

问题描述

这是我的代码,当我发送到 localhost 时可以工作,如下所示,但是如果我将 IP 地址更改为同一网络上的第二台计算机,它会返回无效参数。我在 python 中构建了一个类似的程序来检查两台计算机之间的连接是否正常工作。

const int output_buffer_length = 54;
uint8_t output_buffer[output_buffer_length];  
rec_address.sin_family = AF_INET; 
rec_address.sin_addr.s_addr = inet_addr("127.0.0.1"); 
rec_address.sin_port = htons(4005); 
sin_size = sizeof (rec_address);
socket_gps = open_socket(socket_gps,MESH_PORT_OUT);
int bytesOut = sendto(socket_gps,output_buffer,output_buffer_length,(struct sockaddr *) &rec_address,sin_size);
if (bytesOut < 0) 
 {
     printf("Error writing Jeti cmd to serial %s: ",strerror(errno));
 }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)