服务端
int main()
{
char *sendbuf="thanks";
char buf[256];
int s_fd,c_fd;
int s_len,c_len;
struct sockaddr_in s_addr;
struct sockaddr_in c_addr;
s_fd=socket(AF_INET,SOCK_STREAM,0);
s_addr.sin_family=AF_INET;
s_addr.sin_addr.s_addr=htonl(INADDR_ANY);
s_addr.sin_port=PORT;
s_len=sizeof(s_addr);
bind(s_fd,(struct sockaddr *) &s_addr,s_len);
listen(s_fd,10);
while(1)
{
printf("please wait a moment!]n");
c_len=sizeof(c_addr);
c_fd=accept(s_fd,(struct sockaddr *) &c_addr,(socklen_t *__restrict)&c_len);
recv(c_fd,buf,256,0);
buf[sizeof(buf)+1]="\0";
printf("receieve message:\n%s\n",buf);
send(c_fd,sendbuf,sizeof(sendbuf),0);
close(c_fd);
}
}
客户端
int main()
{
int sockfd;
int len;
struct sockaddr_in addr;
int newsockfd;
char *buf="come on";
int len2;
char rebuf[40];
sockfd=socket(AF_INET,SOCK_STREAM,0);
addr.sin_family=AF_INET;
addr.sin_addr.s_addr=htonl(INADDR_ANY);
addr.sin_port=PORT;
len=sizeof(addr);
newsockfd=connect(sockfd,(struct sockaddr *) &addr,len);
if(newsockfd==-1){
perror("连接失败!");
return 0;
}
len2=sizeof(buf);
send(sockfd,buf,len2,0);
sleep(10);
recv(sockfd,rebuf,256,0);
rebuf[sizeof(rebuf)+1]="\0";
close(sockfd);
return 0;
}