ÃæÀüÇϱâ
Àå¹Ù±¸´Ï
ÀÚ·áÆÇ¸Å
¸¶À̹ڽº
ÅëÇÕ°Ë»ö
Bronze
ÀåÀç¼ö
(¾ÆÀ̵ð clottery)
ÄÄÇ»ÅÍ ³×Æ®¿öÅ©, ÄÄÇ»ÅÍ ÀϹÝ, ±âµ¶±³, ¼º¼­ÀÇ ÀÌÇØ, ¾îµµºê ÇÁ¸®¹Ì¾î

[ÄÄÇ»ÅÍ, ³×Æ®¿öÅ©, Åë½Å] Chatting Server/Client ÇÁ·Î±×·¥

ÀåÀç¼ö > ¹®¼­¹Ú½º > ±âº» Æú´õ | 2004/11/06 ±¸¸Å(104) ¤Ó Á¶È¸(919)
¹®¼­ ¿ä¾àÁ¤º¸
±¸¸ÅÀÚ Æò°¡
¹®¼­ »ó¼¼Á¤º¸
¹Ì¸®º¸±â
¼Ò°³±Û ¼þ½Ç´ë ÄÄÇ»ÅÍÇаú '³×Æ®¿öÅ© ÇÁ·Î±×·¡¹Ö' °ú¸ñ ¸®Æ÷Æ® ÀÔ´Ï´Ù. ±èÀºÈ¯ ±³¼ö´ÔÀÌ °­ÀÇÇϼ̽À´Ï´Ù.
ÄÄÆÄÀÏ
½ÇÇàȯ°æ
Á¦ ¸ñ : Chatting Server/Client ÇÁ·Î±×·¥
°ú ¸ñ ¸í : ³×Æ®¿öÅ© ÇÁ·Î±×·¡¹Ö
±³ ¼ö ¸í : ±è Àº ȯ ±³¼ö´Ô
Á¦ Ãâ ÀÏ : 2001³â 12¿ù 13ÀÏ
Á¦ Ãâ ÀÚ : Á¤º¸°úÇдëÇÐ
ÄÄÇ»ÅͰøÇкÎ
9443036 Àå Àç ¼ö


º»¹®³»¿ë

File : chat_server.c

/*----------------------------------------------------------
ÆÄÀϸí : chat_server.c
±â ´É : äÆÃ Âü°¡ÀÚ °ü¸®, äÆÃ ¸Þ¼¼Áö ¼ö½Å ¹× ¹æ¼Û
ÄÄÆÄÀÏ : cc -o chat_server chat_server.c -lsocket -lnsl
»ç¿ë¹ý : chat_server 4001
------------------------------------------------------------*/

#include
#include
#include
#include
#include
#include
#include
#include
#include
#define MAXLINE 512
#define MAX_SOCK 64

char *escapechar = "/exit"; /* Á¾·á ¹®ÀÚ */
int getmax(int); /* ÇöÀç ¼ÒÄϹøÈ£Áß °¡Àå Å« °ª */
void removeClient(int); /* äÆÃ Å»Åð ó¸® ÇÔ¼ö */
int maxfdp1; /* ÃÖ´ë ¼ÒÄϹøÈ£ +1 */
int num_chat = 0; /* äÆÃ Âü°¡ÀÚ¼ö */
int client_s[MAX_SOCK]; /* äÆÃ¿¡ Âü°¡ÀÚ ¼ÒÄϹøÈ£ ¸ñ·Ï */

char c_name[MAX_SOCK][10]; /* äÆÃ Âü°¡ÀÚÀÇ À̸§À» ÀúÀåÇÏ´Â ¹è¿­ */
char rline[MAXLINE]; /* äÆÃ Âü°¡ÀÚÀÇ ¸Þ½ÃÁö¸¦ Àоî ÀúÀå */
void serverClose(int); /* äÆÃ ¼­¹ö Á¾·á ÇÔ¼ö */
int duplicate_check(); /* Áߺ¹ À̸§À» °Ë»çÇÏ´Â ÇÔ¼ö */

int main(int argc, char *argv[])
{
char my_msg[MAXLINE], message[MAXLINE];
char *start = "-- [äÆÃ ¼­¹ö Á¢¼Ó¿¡ ¼º°øÇϼ̽À´Ï´Ù] --.n"; /* Á¢¼Ó ¼º°ø ¸Þ¼¼Áö */

int i, j, n;
int s, client_fd, clilen;
fd_set read_fds; /* Àб⸦ °¨ÁöÇÒ ¼ÒÄϹøÈ£ ±¸Á¶Ã¼ */
struct sockaddr_in client_addr, server_addr;

if(argc != 2)
{
printf("Use :%s portn", argv[0]);
exit(0);
}
 
Âü°íÀÚ·á Âü°íÀÚ·á ¾øÀ½
Çб³Á¤º¸ 2ÁÖ°£ ´Ù¿î¹ÞÀº ÇлýÀÇ Çб³Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù.(5P ¼Ò¿ä)
ÀúÀÛ±Ç Á¤º¸ À§ Á¤º¸ ¹× °Ô½Ã¹° ³»¿ëÀÇ Áø½Ç¼º¿¡ ´ëÇÏ¿© ÇØÇÇÄ·ÆÛ½º´Â º¸ÁõÇÏÁö ¾Æ´ÏÇϸç, ÇØ´ç Á¤º¸ ¹× °Ô½Ã¹° ÀúÀ۱ǰú ±âŸ ¹ýÀû Ã¥ÀÓÀº ÀÚ·á µî·ÏÀÚ¿¡°Ô ÀÖ½À´Ï´Ù.
À§ Á¤º¸ ¹× °Ô½Ã¹° ³»¿ëÀÇ ºÒ¹ýÀû ÀÌ¿ë, ¹«´Ü ÀüÀ硤¹èÆ÷´Â ±ÝÁöµÇ¾î ÀÖ½À´Ï´Ù.ÀúÀÛ±ÇÄ§ÇØ, ¸í¿¹ÈÑ¼Õ µî ºÐÀï¿ä¼Ò ¹ß°ß½Ã °í°´¼¾ÅÍÀÇ ÀúÀÛ±ÇÄ§ÇØ ½Å°í¼¾Å͸¦ ÀÌ¿ëÇØ Áֽñ⠹ٶø´Ï´Ù.

±¸¸ÅÆò°¡(
2
)
±¸¸Å¹®ÀÇ(
0
)
Æ®·¢¹é(
0
)