小编fra*_*pen的帖子

Linux中C/Socket编程中的聊天室

我有一个简单的服务器和客户端C代码,用于使用线程(pthread库)为多客户端做一个聊天室.我遇到的问题是我无法想到让服务器将客户端通过套接字发送的每条消息写入所有其他客户端的方法.我在这里读过其他类似的帖子,这很无奈.请帮帮我,我需要在学校这样做.我会马上发送两个代码.

Server.c:

#include<stdio.h>
#include<string.h>    //strlen
#include<stdlib.h>    //strlen
#include<sys/socket.h>
#include<arpa/inet.h> //inet_addr
#include<unistd.h>    //write

#include<pthread.h> //for threading , link with lpthread

void *connection_handler(void *);


int main(int argc , char *argv[])
{
    int socket_desc , new_socket , c , *new_sock;
    struct sockaddr_in server , client;
    char *message;

    //Create socket
    socket_desc = socket(AF_INET , SOCK_STREAM , 0);
    if (socket_desc == -1)
    {
        printf("Could not create socket");
    }

    //Prepare the sockaddr_in structure
    server.sin_family = AF_INET;
    server.sin_addr.s_addr = INADDR_ANY;
    server.sin_port = htons( 8888 );

    //Bind
    if( …
Run Code Online (Sandbox Code Playgroud)

c sockets linux chat pthreads

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

c ×1

chat ×1

linux ×1

pthreads ×1

sockets ×1