ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. echo_server.c ¿¹¿Ü ó¸®
ÄÚµå´Â ÇÁ·Î±×·¥ ½ÇÇà ÀÎÀÚ·Î Æ÷Æ® ¹øÈ£¸¦ ¹Þ¾Æ¼ ó¸®ÇÕ´Ï´Ù. ±×·±µ¥, ¿¹¿Ü󸮸¦ ÇÏÁö ¾Ê¾Æ¼ ½ÇÇàÀÎÀÚ ¾øÀÌ ½ÇÇàÇÒ °æ¿ì ¼¼±×¸ÕÆ® ¿¡·¯¸¦ Ãâ·ÂÇÕ´Ï´Ù.
´ÙÀ½Àº Ã¥¿¡ ¼Ò°³µÈ ÄÚµåÀÔ´Ï´Ù. 001 int main(int argc, char **argv) 002 { 003 int server_sockfd, client_sockfd; 004 int client_len, n; 005 char buf[MAXBUF]; 006 struct sockaddr_in clientaddr, serveraddr; 007 008 client_len = sizeof(clientaddr); 009 if ((server_sockfd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP )) == -1) 010 { 011 perror("socket error : "); 012 exit(0); 013 } 014 bzero(&serveraddr, sizeof(serveraddr)); 015 serveraddr.sin_family = AF_INET; 016 serveraddr.sin_addr.s_addr = htonl(INADDR_ANY); 017 serveraddr.sin_port = htons(atoi(argv[1])); 018½ÇÇàÀÎÀÚ°¡ ¾øÀ» °æ¿ì 17¹ø¿¡¼ ¼¼±×¸ÕÆ® ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù.
´ÙÀ½Ã³·³ ½ÇÇàÀÎÀÚ¸¦ °Ë»çÇÏ´Â Äڵ带 ³Ö¾îÁÖ´Â °ÍÀ¸·Î ¿¹¿Ü󸮸¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù. int main(int argc, char **argv) { int server_sockfd, client_sockfd; int client_len, n; char buf[MAXBUF]; struct sockaddr_in clientaddr, serveraddr; // ÇÁ·Î±×·¥ ½ÇÇà ÀÎÀÚ¸¦ °Ë»çÇÑ´Ù. // ¸¸¾à ½ÇÇàÀÎÀÚ°¡ ¾øÀ¸¸é »ç¿ë¹ýÀ» Ãâ·ÂÇϰí ÇÁ·Î¼¼½º¸¦ Á¾·áÇÑ´Ù. if(argc !=2 ) { fprintf(stderr,"Usage : %s [port]\n", argv[0]); return 1; } client_len = sizeof(clientaddr); if ((server_sockfd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP )) == -1) { perror("socket error : "); exit(0); } echo_server.c ¿ÏÀü ÄÚµå#include <sys/socket.h> #include <sys/stat.h> #include <arpa/inet.h> #include <stdio.h> #include <string.h> #define MAXBUF 1024 int main(int argc, char **argv) { int server_sockfd, client_sockfd; int client_len, n; char buf[MAXBUF]; struct sockaddr_in clientaddr, serveraddr; if(argc !=2 ) { fprintf(stderr,"Usage : %s [port]\n", argv[0]); return 1; } client_len = sizeof(clientaddr); if ((server_sockfd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP )) == -1) { perror("socket error : "); exit(0); } bzero(&serveraddr, sizeof(serveraddr)); serveraddr.sin_family = AF_INET; serveraddr.sin_addr.s_addr = htonl(INADDR_ANY); serveraddr.sin_port = htons(atoi(argv[1])); bind (server_sockfd, (struct sockaddr *)&serveraddr, sizeof(serveraddr)); listen(server_sockfd, 5); while(1) { memset(buf, 0x00, MAXBUF); client_sockfd = accept(server_sockfd, (struct sockaddr *)&clientaddr, &client_len); printf("New Client Connect: %s\n", inet_ntoa(clientaddr.sin_addr)); if ((n = read(client_sockfd, buf, MAXBUF)) <= 0) { close(client_sockfd); continue; } if (write(client_sockfd, buf, MAXBUF) <=0) { perror("write error : "); close(client_sockfd); } close(client_sockfd); } close(server_sockfd); return 0; } echo_client.c ¿ÏÀü ÄÚµå
#include <sys/socket.h> /* ¼ÒÄÏ °ü·Ã ÇÔ¼ö */ #include <arpa/inet.h> /* ¼ÒÄÏ Áö¿øÀ» À§ÇÑ °¢Á¾ ÇÔ¼ö */ #include <sys/stat.h> #include <stdio.h> /* Ç¥ÁØ ÀÔÃâ·Â °ü·Ã */ #include <string.h> /* ¹®ÀÚ¿ °ü·Ã */ #include <unistd.h> /* °¢Á¾ ½Ã½ºÅÛ ÇÔ¼ö */ #define MAXLINE 1024 int main(int argc, char **argv) { struct sockaddr_in serveraddr; int server_sockfd; int client_len; char buf[MAXLINE]; if(argc != 2) { fprintf(stderr, "Usage : %s [port]\n", argv[0]); return 1; } if ((server_sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) { perror("error :"); return 1; } /* ¿¬°á¿äûÇÒ ¼¹öÀÇ ÁÖ¼Ò¿Í Æ÷Æ®¹øÈ£ ÇÁ·ÎÅäÄݵîÀ» ÁöÁ¤ÇÑ´Ù. */ server_sockfd = socket(AF_INET, SOCK_STREAM, 0); serveraddr.sin_family = AF_INET; serveraddr.sin_addr.s_addr = inet_addr("127.0.01"); serveraddr.sin_port = htons(atoi(argv[1])); client_len = sizeof(serveraddr); /* ¼¹ö¿¡ ¿¬°áÀ» ½ÃµµÇÑ´Ù. */ if (connect(server_sockfd, (struct sockaddr *)&serveraddr, client_len) == -1) { perror("connect error :"); return 1; } memset(buf, 0x00, MAXLINE); read(0, buf, MAXLINE); /* Űº¸µå ÀÔ·ÂÀ» ±â´Ù¸°´Ù. */ if (write(server_sockfd, buf, MAXLINE) <= 0) /* ÀÔ·Â ¹ÞÀº µ¥ÀÌÅ͸¦ ¼¹ö·Î Àü¼ÛÇÑ´Ù. */ { perror("write error : "); return 1; } memset(buf, 0x00, MAXLINE); /* ¼¹ö·Î ºÎÅÍ µ¥ÀÌÅ͸¦ Àд´Ù. */ if (read(server_sockfd, buf, MAXLINE) <= 0) { perror("read error : "); return 1; } close(server_sockfd); printf("read : %s", buf); return 0; } |
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|