2012-12-23 1 views
0

이 코드를 사용하여 어떤 클라이언트가 서버로 메시지를 보내 게합니까?c에서 서버의 모든 클라이언트에게 메시지를 보내는 방법은 무엇입니까?

recvfrom(s, buf, BUFLEN, 0, (struct sockaddr *) &si_other, &slen)); 

printf("Received packet from %s:%d\n", inet_ntoa(si_other.sin_addr), ntohs(si_other.sin_port)); 

그리고이 코드로이 클라이언트에게 메시지를 보낼 수 있습니다.

sendto(s, "data", recv_len, 0, (struct sockaddr*) &si_other, slen); 

그러나이 메시지 ("데이터")는 단 한 대의 클라이언트가 아닌 모든 클라이언트에게 보내고 싶습니다. 어떻게해야합니까?

+2

"반복"이라는 개념에 대해 들어 봤습니까? –

답변

2

목록에서 클라이언트로부터 수락 한 연결을 추적하고 모든 사람에게 메시지를 보내려는 경우 해당 목록을 반복하여 반복하고 각 메시지에 개별적으로 원하는 메시지를 보냅니다.

+1

고맙습니다. 나는 이것을 필요로한다. –

관련 문제