ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. echo_server_win.c
Å×½ºÆ® °³¹ßÇß´ø Äڵ带 ¹®¼·Î ¿Å±â¸é¼ ¾Æ¿¹ ¾û¶×ÇÏ°Ô ¿Ã¶ó °£°Í °°½À´Ï´Ù. ÀÌ¿¡ ´ÙÀ½°ú °°ÀÌ Äڵ带 ¼öÁ¤ÇÕ´Ï´Ù. 001 #include <winsock2.h> 002 #include <stdio.h> 003 004 #define MAX_PACKETLEN 1024 005 #define PORT 3500 006 007 int main() 008 { 009 WSADATA wsaData; 010 SOCKET listen_s, client_s; 011 struct sockaddr_in server_addr, client_addr; 012 char szReceiveBuffer[MAX_PACKETLEN]; 013 int readn, writen; 014 int len; 015 016 if(WSAStartup(MAKEWORD(2,2), &wsaData) != 0) 017 { 018 return 1; 019 } 020 listen_s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); 021 if(listen_s == INVALID_SOCKET) 022 { 023 return 1; 024 } 025 026 ZeroMemory(&server_addr, sizeof(struct sockaddr_in)); 027 028 server_addr.sin_family = PF_INET; 029 server_addr.sin_port = htons(PORT); 030 server_addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY); 031 032 if(bind(listen_s, (struct sockaddr *)&server_addr, sizeof(struct sockaddr_in)) == SOCKET_ERROR) 033 { 034 return 0; 035 } 036 if(SOCKET_ERROR == listen(listen_s, 5) == SOCKET_ERROR) 037 { 038 return 0; 039 } 040 041 042 while(1) 043 { 044 ZeroMemory(&client_addr, sizeof(struct sockaddr_in)); 045 len = sizeof(struct sockaddr_in); 046 client_s = accept(listen_s, (struct sockaddr *)&client_addr, &len); 047 readn = recv(client_s, szReceiveBuffer, MAX_PACKETLEN, 0); 048 if(readn > 0) 049 { 050 writen = send(client_s, szReceiveBuffer, readn, 0); 051 } 052 closesocket(client_s); 053 } 054 closesocket(listen_s); 055 WSACleanup(); 056 return 0; 057 } 0585. accept ÇÔ¼ö·Î ±â´Ù¸± Æ÷Æ®¹øÈ£¸¦ 3500À¸·Î Á¤ÀÇÇÑ´Ù.
16. WSAStartup ÇÔ¼ö·Î À©¼ÓÀ» ·ÎµùÇÑ´Ù.
42 ~ 53. accept ÇÔ¼ö·Î Ŭ¶óÀÌ¾ðÆ®¸¦ ±â´Ù¸°´Ù. ¸¸¾à ¿¬°áµÈ´Ù¸é recvÇÔ¼ö·Î µ¥ÀÌÅ͸¦ Àаí sendÇÔ¼ö·Î Ŭ¶óÀÌ¾ðÆ®¿¡ Àç Àü¼ÛÇÑ´Ù. µ¥ÀÌÅÍ Àü¼Û ÈÄ closesocket ÇÔ¼ö¸¦ È£ÃâÇØ¼ Ŭ¶óÀÌ¾ðÆ® ¿¬°áÀ» ²÷´Â´Ù.
|
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|