/*************************************************************************
> File Name: server.c
> Author: qinf
> Mail:
> Created Time: Thu 03 Apr 2014 09:39:57 AM CST
************************************************************************/
#include "mul_chat.h"
struct linknode {
struct sockaddr_in addr;
struct linknode *next;
};
typedef struct linknode *linklist;
linklist create_linklist();
void insert_linknode(linklist L, struct sockaddr_in client_addr);
void delete_linknode(linklist L, struct sockaddr_in client_addr);
int linklist_len(linklist L);
int main(int argc, char *argv[])
{
int server_fd, serveraddr_len, client_len;
struct sockaddr_in server_addr, client_addr;
int pid, iret, result;
fd_set inputs, testfds;
struct timeval timeout;
char buf[512];
linklist L;
L = create_linklist();
//1.socket
iret = server_fd = socket(AF_INET, SOCK_DGRAM, 0);
if (iret == -1) {
perror("socket
多人聊天程序的实现
最新推荐文章于 2022-02-10 20:40:24 发布
本文详细介绍了如何利用Linux系统上的UDP套接字编程实现一个支持多人参与的聊天程序。通过创建并绑定UDP套接字,设置多线程处理并发连接,实现了消息的广播,确保每个在线用户都能接收到并显示所有聊天内容。同时,讨论了在网络编程中可能遇到的丢包、乱序问题及解决方案。
摘要由CSDN通过智能技术生成