linux下socket通信.pdf
文本预览下载声明
Linux 下的socket 通信
一、 客户端
#include sys/types.h
#include sys/socket.h
#include stdio.h
#include netinet/in.h
#include arpa/inet.h
#include unistd.h
#include stdlib.h
int main(int argc,char *argv[])
{
int sockfd;
int len,cl_len;
struct sockaddr_in address,cl_addr;
int result;
int i,byte;
char char_recv,char_send;
if((sockfd = socket(AF_INET, SOCK_DGRAM, 0))==- 1)
{
perror(socket);
exit(EXIT_FAILURE);
}
address.sin_family = AF_INET;
address.sin_addr.s_addr = inet_addr(127.0.0.1);
address.sin_port = 9734;
// cl_addr.sin_family = AF_INET;
// cl_addr.sin_addr.s_addr = inet_addr(127.0.0.1);
// cl_addr.sin_port = 9739;
len = sizeof(address);
// cl_len= sizeof (cl_addr);
// bind(sockfd, (struct s ockaddr *)cl_addr, len);
for(i=0,char_send=A;i5;i++,char_send++)
{
if((byte=sendto(sockfd,char_send,1,0,(struct sockaddr
*)address,(socklen_t)len))==- 1)
{
perror(sendto);
exit(EXIT_FAILURE);
}
// if((byte=recvfrom(sockfd,char_recv,1,0,(struct sockaddr *)address,(socklen_t
*)len))==- 1)
// {
// perror(recv);
// exit(EXIT_FAILURE);
// }
// printf(receive from client is %c \n,char_recv);
/* if((byte=recv(sockfd,char_recv,1,0))==- 1)
{
perror(recv);
exit(EXIT_FAILURE);
}
printf(receive from server %c \n,char_recv);
*/}
close(sockfd);
exit(0);
}
一、 服务器端
#inclu
显示全部