C++ 这种发送打包结构的多播消息的方式有什么问题?

C++ 这种发送打包结构的多播消息的方式有什么问题?,c++,multicast,C++,Multicast,这是不对的吗 ssize_t rc; do { rc = ::sendto(fd_, (char*) &fooStruct, sizeof(fooStruct), 0, &sockAddr_, sizeof(sockAddr_)); } while ((rc == -1 && errno == EINTR)); if (rc < 0) cout << "failed to mcast message " << end

这是不对的吗

ssize_t rc;
do
{
    rc = ::sendto(fd_, (char*) &fooStruct, sizeof(fooStruct), 0, &sockAddr_, sizeof(sockAddr_));
} while ((rc == -1 && errno == EINTR));

if (rc < 0)
    cout << "failed to mcast message " << endl;
ssize\t rc;
做
{
rc=::发送到(fd_u3;,(char*)&fooStruct,sizeof(fooStruct),0,&sockAddr_3;,sizeof(sockAddr_3;));
}而((rc=-1&&errno==EINTR));
if(rc<0)

难道
errno
的值是多少?如果你打印出
strerror(errno)
,你会看到什么?@eile是的,我想是52字节。为什么?UDP消息限制为64k大小,但这也不是您的错误。知道错误会有所帮助。
ssize_t rc = ::sendto(fd_, (char*) &fooStruct, sizeof(fooStruct), 0, &sockAddr_, sizeof(sockAddr_));
if (rc < 0) 
    cout << "failed to mcast message " << endl;