server.c

来自「实现udp包传输的client和server」· C语言 代码 · 共 45 行

C
45
字号
#include <sys/types.h>#include <sys/socket.h>#include<netinet/in.h>#include <arpa/inet.h>#include <stdio.h>#include <errno.h>#define PORT 3478int main(){	int sockfd,len;	struct sockaddr_in addr;	int addr_len;	char buffer[256];	addr_len = sizeof(addr);	if((sockfd = socket(AF_INET,SOCK_DGRAM,0)) == -1)	{		fprintf(stderr,"open socket error:%s\n",strerror(errno));		exit(1);	}	bzero(&addr,addr_len);	addr.sin_family = AF_INET;	addr.sin_port = htons(PORT);	addr.sin_addr.s_addr = htonl(INADDR_ANY);	if(bind(sockfd,(struct sockaddr *)&addr,addr_len) == -1)	{		fprintf(stderr,"bind error:%s\n",strerror(errno));		exit(1);		}		while(1)	{		bzero(buffer,sizeof(buffer));		len = recvfrom(sockfd,buffer,sizeof(buffer),				0,(struct sockaddr *)&addr,&addr_len);		//display address of cilent		printf("receive from %s\n",inet_ntoa(addr.sin_addr));		sendto(sockfd,buffer,len,0,(struct sockaddr *)&addr,addr_len);	}	return 0;		}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?