ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.
HTML º¯È¯¹®¼
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.1//EN"> <chapter lang=ko> <!-- ÀÛ¼ºÀÚ : yundream --> <!-- ÀÛ¼ºÀÏ : 2004/01/03 --> <!-- ¿¬¶ôó : yundream@joinc.co.kr --> <!-- ÇÔ¼ö À̸§À» ÀÔ·ÂÇÕ´Ï´Ù --> <title>htons(3)</title> <!-- ÀÌ°Ç ÇÔ¼ö¿¡ ´ëÇÑ ´ë·«ÀûÀÎ ¼³¸íÀ̱¸¿ä --> <para> host byte orderÀ» µû¸£´Â µ¥ÀÌÅ͸¦ network byte order·Î º¯°æÇÑ´Ù. </para> <!-- ¿©±â¿¡ ÇÔ¼öÀÇ °£´ÜÇÑ »ç¿ë¹ýÀÌ µé¾î°©´Ï´Ù --> <section> <title>»ç¿ë¹ý</title> <para> <screen> #include <netinet.h> unsigned short int htons(unsigned short int hostshort); unsigned long int htonl(unsigned long int hostshort); unsigned short int ntohs(unsigned short int hostshort); unsigned long int ntohl(unsigned long int hostshort); </screen> </para> </section> <!-- ¿©±â¿£ ÇÔ¼öÀÇ ÀÚ¼¼ÇÑ ¼³¸í ÀÌ µé¾î°©´Ï´Ù --> <section> <title>¼³¸í</title> <para> µ¥ÀÌÅÍ´Â ¹ÙÀÌÆ® ´ÜÀ§·Î ÀúÀåµÇÁö¸¸ ÀúÀåµÇ´Â ¹æ½Ä¿¡ ÀÖ¾î¼ CPU¸¶´Ù Â÷À̰¡ ¹ß»ýÇÏ°Ô µÈ´Ù. ¿¹¸¦ µé¾î 4¹ÙÀÌÆ® Å©±âÀÇ intÀڷḦ ÀúÀåÇÑ´Ù°í ÇßÀ» ¶§ ¾î¶² CPU´Â °¡Àå ³·Àº ¹ÙÀÌÆ®ºÎÅÍ ÀúÀåÀ» Çϴ°¡ Çϸé, ¾î¶² CPU´Â °¡Àå ³ôÀº ¹ÙÀÌÆ® ºÎÅÍ µ¥ÀÌÅ͸¦ ÀúÀåÇϱ⵵ ÇÑ´Ù. ÀüÀÚ¸¦ Little Endian¹æ½Ä, ÈÄÀÚ¸¦ Big Endian¹æ½Ä À̶ó°í ÇÑ´Ù. </para> <para> ÀÌ·± ÀÌÀ¯·Î ¼·Î ´Ù¸¥ µ¥ÀÌÅÍ ÀúÀå ¹æ½ÄÀ» »ç¿ëÇÏ´Â ½Ã½ºÅÛ³¢¸® Åë½ÅÀ» ÇÏ°Ô µÉ°æ¿ì ÀüÇô ¿øÇÏÁö ¾Ê´Â °ªµéÀ» ¼·Î ÁÖ°í ¹Þ´Â °æ¿ì°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù. ÇÑÂÊ¿¡¼´Â 12345¸¦ º¸³Â´Âµ¥, ´Ù¸¥ ÇÑÂÊ¿¡¼´Â ¾û¶×ÇÏ°Ô 365779719·Î ¹Þ¾Æ µéÀÌ´Â ¹®Á¦µéÀÌ ¹ß»ýÇÑ´Ù. </para> <para> ÀÌ·± ¹®Á¦¸¦ ÇØ°áÇϱâ À§Çؼ µ¥ÀÌÅÍ Åë½ÅÀ» ÇÒ¶§´Â ¸í½ÃÀûÀ¸·Î ³×Æ®¿öÅ© byte orderÀ» µû¸£µµ·Ï µ¥ÀÌÅÍÀÇ byte order¸¦ º¯°æÇÑ´Ù. ³×Æ®¿öÅ© byte order´Â Big EndiasnÀ» µû¸¥´Ù. </para> <para> ¿ø°Ý È£½ºÆ®¿Í µ¥ÀÌÅÍ Åë½ÅÀ» ÇÏ±æ ¿øÇÑ´Ù¸é º¸³¾ ¶§ ³×Æ®¿öÅ© byte order·Î, ¹Þ¾ÒÀ» ¶§´Â È£½ºÆ® byteorder·Î º¯°æÇÑ´Ù. </para> <para> <emphasis>htonl()</emphasis>ÇÔ¼ö´Â long intger(ÀϹÝÀûÀ¸·Î 4byte)µ¥ÀÌÅ͸¦ ³×Æ®¿öÅ© byte order·Î º¯°æÇÑ´Ù. </para> <para> <emphasis>htons()</emphasis>ÇÔ¼ö´Â short intger(ÀϹÝÀûÀ¸·Î 2byte)µ¥ÀÌÅ͸¦ ³×Æ®¿öÅ© byte order·Î º¯°æÇÑ´Ù. </para> <para> <emphasis>ntohl()</emphasis>ÇÔ¼ö´Â long intger µ¥ÀÌÅ͸¦ È£½ºÆ® byte order·Î º¯°æÇÑ´Ù. </para> <para> <emphasis>ntohs()</emphasis>ÇÔ¼ö´Â short intger µ¥ÀÌÅ͸¦ È£½ºÆ® byte order·Î º¯°æÇÑ´Ù. </para> <para> Endian°ú ³×Æ®¿öÅ© byte order¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº <ulink url="http://www.joinc.co.kr/modules.php?name=News&file=article&sid=79">Endian¿¡ ´ëÇØ¼</ulink>¸¦ Âü°íÇϱ⠹ٶõ´Ù. </para> </section> <!-- ÇÔ¼ö°¡ µÇµ¹·ÁÁÖ´Â °ªÀ̱¸¿ä --> <section> <title>¹Ýȯ°ª</title> <para> ³×Æ®¿öÅ© byte orderµÈ 2¹ÙÀÌÆ® °ªÀ» ³Ñ°ÜÁØ´Ù. </para> </section> <!-- ¸¶Áö¸·À¸·Î ¿¡Á¦ ÀÔ´Ï´Ù --> <!-- ¿©±â¿¡´Â ¿ÏÀüÇÑ ¿¹Á¦°¡ µé¾î°¡ Àִµ¥, ±»ÀÌ ¿ÏÀüÇÑ ¿¹Á¦¸¦ ¸¸µéÇÊ¿ä ¾øÀÌ --> <!-- ÄÚµå ÀϺκи¸ ÀÛ¼ºÇؼ ¿Ã·ÁÁּŵµ µË´Ï´Ù --> <!-- "<", ">", "&" µîÀº º¯È¯ÇØ ÁÖ¼Å¾ß Çϴµ¥, ±ÍÂúÀ¸½Ã¸é :-) º¯È¯ ÇÏÁö ¾Ê --> <!-- ¾Æµµ µË´Ï´Ù. Á¦°¡ °Ë»ç ÇØ¼ ¿Ã¸®°Ú½À´Ï´Ù --> <!-- ¿¹Á¦¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸íÀ» Àû¾îÁּŵµ µÇ±¸¿ä --> <section> <title>¿¹Á¦</title> <para> <screen> #include <sys/time.h> #include <sys/socket.h> #include <fcntl.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <netinet/in.h> #include <arpa/inet.h> int main(int argc, char **argv) { int client_sockfd; struct sockaddr_in clientaddr; int data = 123456789; int client_len; client_sockfd = socket(AF_INET, SOCK_STREAM, 0); clientaddr.sin_family = AF_INET; clientaddr.sin_addr.s_addr = inet_addr("192.168.100.190"); clientaddr.sin_port = htons(atoi(argv[1])); client_len = sizeof(clientaddr); if (connect(client_sockfd, (struct sockaddr *)&clientaddr, client_len) < 0) { perror("Connect error : "); exit(0); } // º¸³¾ µ¥ÀÌÅÍ ³×Æ®¿öÅ© byte order¸¦ µû¸£µµ·Ï º¯°æÇÑ´Ù. data = htonl(data); write(client_sockfd, (void *)&data, sizeof(int)); // ÀоîµéÀÎ µ¥ÀÌÅʹ ȣ½ºÆ® byte orderÀ» µû¸£µµ·Ï º¯°æÇÑ´Ù. read(client_sockfd, (void *)&data, sizeof(int)); data = ntohl(data); close(client_sockfd); } </screen> </para> </section> </chapter> |
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|