同一端口监听tcp和udp请求
问题: 众所周知,同一台机器的同一个端口只可以被一个进程使用,一般用于tcp,或者udp。那一个进程使用同一个端口同时监听tcp、udp请求,是否可以呢?答案:可以。 代码: server 为了同时监听,server使用select进行多路访问控制。 server端代码如下: /* TCP INET use select */ #include<stdio.h> #include<stdlib.h> #include<string.h> #include<errno.h> #include<sys/types.h> #include<sys/socket.h> #include<netinet/in.h> #define LENGTH_OF_LISTEN_QUEUE 20 #define SERVER_PORT 8888 #define MAXLINE 4096 #define MAX_FD_NUM 10 static int init_new_client( int client_fd); static int remove_client( int client_fd); static int get_max_fd( int fd); static int client_fdset[MAX_FD_NUM]; int main( int argc, char ** argv) {