【发布时间】:2014-05-03 17:12:49
【问题描述】:
当编译器达到reliableRecv 我得到一个eroor 当编译器达到reliableRecv 我得到一个eroor
int rvsock;
rvsock = socket(AF_INET,SOCK_DGRAM,0);
struct sockaddr_in saddr;
struct sockaddr_in caddr;
if (rvsock < 0){
perror("Failed to create the socket!!");
exit(1);
}
//we mark the memory pointed by saddr with 0
memset(&saddr,0,sizeof(saddr) );
saddr.sin_family = AF_INET;
saddr.sin_addr.s_addr = INADDR_ANY;
saddr.sin_port = htons(port);
err = bind(rvsock, (struct sockaddr*)&saddr,sizeof(struct sockaddr_in));
if(err < 0){
perror("Failed to bind");
exit(1);
}
unsigned int len;
len = sizeof(struct sockaddr_in);
reliableRecv(rvsock,filename,1024,(struct sockaddr*)&caddr,(size_t *)&len);
reliableRecv 是这样定义的
int reliableRecv(int sockfd,void* buffer,size_t bufferlen,struct sockaddr *src_addr,size_t *srclen)
{
int n=recvfrom(sockfd,buffer,bufferlen,0,src_addr,&srclen);
return n;
}
【问题讨论】:
-
请发布您的所有代码、调用编译器的方式以及错误。
-
'我得到一个错误'。嗯,那就很清楚了。
-
“我收到错误”不是可接受的问题描述。您应该在此处发布错误消息。将其编辑到您的问题中。