server.c
来自「基于Linux上一个简单的UDP数据收发程序」· C语言 代码 · 共 47 行
C
47 行
#include <stdio.h>#include <sys/socket.h>#include <netinet/in.h>#include <stdbool.h>char *copyright = "UDP SERVER CopyRight:2008-04 xWorld\n\=========================================================";short int srv_port = 7789;/********************************/int main(int argc, char * argv[]){ printf("%s\n", copyright); int sockfd; sockfd = socket(AF_INET, SOCK_DGRAM, 0); if (sockfd == -1) { printf("Error 01: sockfd "); exit(-1); } struct sockaddr_in server,their; server.sin_family = AF_INET; server.sin_port = htons(srv_port); server.sin_addr.s_addr = INADDR_ANY; memset(server.sin_zero, '\0', 8); bind(sockfd, (struct sockaddr *)&server, sizeof(struct sockaddr)); printf("bind ip:%s\tport:%i\n",inet_ntoa(server.sin_addr.s_addr), srv_port); char buf[4096]; int resize, the_len; the_len = sizeof(struct sockaddr); while(true){ resize = recvfrom(sockfd, buf, sizeof(buf)-1, 0, (struct sockaddr *)&their, &the_len); printf("%s\n", buf); printf("\t\t%s\n", inet_ntoa(their.sin_addr)); } close(sockfd); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?