C¸À¸ì´Ø·¸·Ç¼¨ÈÄ

²áµî¥í¥°

No¡¥£±£°£°£±¡¡16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë

[Ìá¤ë]¡¡[¥Û¡¼¥à¥Ú¡¼¥¸]
No.909

16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---¤â¤ß¤¢¤²(2003/12/25 22:10:12)


16¿Ê¥Ç¡¼¥¿(00¡ÁFF)¤Î¥Ç¡¼¥¿Îó¤òÆÉ¤ß¹þ¤ó¤Ç¡¢
10¿Ê¥Ç¡¼¥¿(0¡Á256)¤ËÊÑ´¹¤·¡¢ÇÛÎó¤Ë³ÊǼ¤¹¤ë
¤È¤¤¤¦½èÍý¤Ë¤Ä¤¤¤Æ¼ÁÌ䤵¤»¤Æ¤¯¤À¤µ¤¤¡£

Îã¡Ë
16¿Ê¿ô¥Ç¡¼¥¿¡§FFFEFA30F2
10¿Ê¿ô¤ÎÇÛÎó¡§{255,254,250,48,242}

²¼µ­¤Î¤è¤¦¤Ë¹Í¤¨¤Þ¤·¤¿¤¬¡¢¤É¤¦¤Ç¤·¤ç¤¦¤«¡©

char input[256]="FFFEFA30F2";   // ¥Æ¥¹¥È¥Ç¡¼¥¿
char tmp[10]="";                // ºî¶ÈÍÑ
int output[126]={0};            // ·ë²Ì³ÊǼ

int length=strlen(input);      // ¥Æ¥¹¥È¥Ç¡¼¥¿¤Î¥ì¥ó¥°¥¹

for(int i=0; i<length/2; i++){
    memcpy(tmp,input+2*i,2);            // 2ʸ»ú¤º¤ÄÆÉ¤ß¹þ¤à
    output[i] = strtoul(tmp,NULL,16);   // 10¿Ê¿ô¤ËÊÑ´¹¤·¡¢ÇÛÎó¤Ë³ÊǼ 
}


£Ã¤Î·Ð¸³¤Ï¤Þ¤ÀÀõ¤¯¡¢
¼±¼Ô¤ÎÊý¤Î¤´°Õ¸«¤¬Ê¹¤­¤¿¤¯¤ÆÅê¹Æ¤µ¤»¤ÆÄº¤­¤Þ¤·¤¿¡£
¤è¤í¤·¤¯¤ª´ê¤¤¤·¤Þ¤¹¡£

No.910

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---¤¢¤«¤Þ(2003/12/26 06:16:24)


memcpy¤À¤Èʸ»úÎó¤ÎºÇ¸å¤Ë'\0'¤¬¤Ä¤«¤Ê¤¤¤Î¤Ç
strncpy¤Ë¤·¤Ê¤¤¤È¥Ð¥°¤Ë¤Ê¤ê¤Þ¤¹¡£

¤¢¤È¤ÏÆÃ¤Ë¡©åºÎï¤Ê¥×¥í¥°¥é¥à¤À¤È»×¤¤¤Þ¤¹¡£
¾¯¤·¤Ç¤â̵Â̤ò̵¤¯¤·¤¿¤¤¤Ê¤é
/2¤Ê¤É¤ÎÄê¿ô¤ò¥ë¡¼¥×¤Î³°¤Ë½Ð¤¹¡£
¾å½ñ¤­¤¹¤ë¤Ê¤é½é´ü²½¤Ï¤¤¤é¤Ê¤¤¡£
¥Ý¥¤¥ó¥¿¤ò»È¤¦¡£
¤È¤«¸Ä¿ÍŪ¤Ê¼ñÌ£¤Ë¶á¤¤¤â¤Î¤â¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡£

char input[256]="FFFEFA30F2";   // ¥Æ¥¹¥È¥Ç¡¼¥¿
char tmp[10];                // ºî¶ÈÍÑ
int output[126];            // ·ë²Ì³ÊǼ

char *length=input+strlen(input);      // ¥Æ¥¹¥È¥Ç¡¼¥¿¤Î¥ì¥ó¥°¥¹

for(char *i=input; i<length; i += 2){
    strncpy(tmp,i,2);            // 2ʸ»ú¤º¤ÄÆÉ¤ß¹þ¤à
    output[i] = strtoul(tmp,NULL,16);   // 10¿Ê¿ô¤ËÊÑ´¹¤·¡¢ÇÛÎó¤Ë³ÊǼ 
}


No.911

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---YuO(2003/12/26 08:22:55)


>>²¼µ­¤Î¤è¤¦¤Ë¹Í¤¨¤Þ¤·¤¿¤¬¡¢¤É¤¦¤Ç¤·¤ç¤¦¤«¡©

Á´¤¯ÌäÂê¤Ê¤¤¤È»×¤¤¤Þ¤¹¤¬¡£



>memcpy¤À¤Èʸ»úÎó¤ÎºÇ¸å¤Ë'\0'¤¬¤Ä¤«¤Ê¤¤¤Î¤Ç
>strncpy¤Ë¤·¤Ê¤¤¤È¥Ð¥°¤Ë¤Ê¤ê¤Þ¤¹¡£

¤ó¡©
char tmp[10] = "";

¤È¤¤¤¦ÄêµÁ¤Ï¡¤
char tmp[10] = { 0 };

¤ÈÅù¤·¤¯¡¤·ë²Ì¤È¤·¤Æ
char tmp[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };

¤ÈÅù¤·¤¤¤Ç¤¹¡£

¤³¤ì¤Ë¤è¤ê¡¤¸µ¡¹¤Î¥×¥í¥°¥é¥à¤Ïtmp[2]¤Ï¾ï¤Ë0¤È¤Ê¤ê¡¤
¥é¥¤¥Ö¥é¥ê¤Îʸ»úÎó¤È¤·¤Æ»È¤¨¤Þ¤¹¡£

¤½¤ì¤ËÂФ·¤Æ¡¤¤¢¤«¤Þ¤µ¤ó¤Î¥×¥í¥°¥é¥à¤Ç¤Ïtmp¤¬½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¤
tmp[2]¤ÏÉÔÄê¤Ç¤¹¡£
¤½¤·¤Æ¡¤strncpy¤Ë¤è¤Ã¤Æ¥Ê¥ëʸ»ú¤ÏÉղ䵤ì¤Ê¤¤¤¿¤á¡¤
strncpy¤ò½ª¤¨¤¿»þÅÀ¤Ç¤âtmp[2]¤Ï¾ï¤ËÉÔÄê¤Ç¤¹¡£
¤è¤Ã¤Æ¡¤strtoul¤Ë¥Ê¥ëʸ»ú¤Ç½ªÃ¼¤¹¤ë¤È¤Ï¸Â¤é¤Ê¤¤Ê¸»úÎó¤Ç¤Ê¤¤Êª¤òÅϤ¹¤³¤È¤Ë¤Ê¤ê¡¤
·ë²Ì¤ÏÉÔÄê¤È¤Ê¤ê¤Þ¤¹¡£


No.914

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---¤¢¤«¤Þ(2003/12/26 15:41:02)


¤¢¤ê¤ã¡¢¼ºÎ餷¤Þ¤·¤¿¡£
char tmp[10] = "";
¤Ï
tmp[0]='\0';
¤À¤È»×¤Ã¤Æ¤¤¤Þ¤·¤¿¡£
¤¢¡¼¤ó¤Éstrncpy¤Ï'\0'¤Ä¤«¤Ê¤¤¤Î¤Í¡¼¡£¤¢¤Ï¤Ï¡Ê¾Ð¤Ã¤Æ¤´¤Þ¤«¤¹¡Ë

¥¢¥Û¥ì¥¹¤Ç£²¤Ä¤â¸­¤¯¤Ê¤Ã¤Á¤ã¤Ã¤¿¤è¡£


¤³¤ÎÅê¹Æ¤Ë¥³¥á¥ó¥È¤¹¤ë

ºï½ü¥Ñ¥¹¥ï¡¼¥É

No.912

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---nop(2003/12/26 09:30:26)


>16¿Ê¥Ç¡¼¥¿(00¡ÁFF)¤Î¥Ç¡¼¥¿Îó¤òÆÉ¤ß¹þ¤ó¤Ç¡¢
>10¿Ê¥Ç¡¼¥¿(0¡Á256)¤ËÊÑ´¹¤·¡¢ÇÛÎó¤Ë³ÊǼ¤¹¤ë
>¤È¤¤¤¦½èÍý¤Ë¤Ä¤¤¤Æ¼ÁÌ䤵¤»¤Æ¤¯¤À¤µ¤¤¡£

ɬ¤º16¿Ê¿ôʸ»ú°Ê³°¤Ï¤¢¤ê¤¨¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢
sscanf()¤ò»È¤¦¤È¤¤¤¦¼ê¤â¤¢¤ê¤Þ¤¹¡£

sscanf()¤ÎÍøÅÀ¤Ï¥ï¡¼¥¯¥¨¥ê¥¢¤¬ÉÔÍפÊÅÀ¤Ç¤·¤ç¤¦¤«¤Í¡£

Îã¡§
¡¡int val;
¡¡char buf[] = "12345678";
¡¡sscanf( buf, "%2X", &val );

¤Ç val ¤Ë 0x12 ¤¬³ÊǼ¤µ¤ì¤Þ¤¹¡£

No.915

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---Ancient Hacker(2003/12/28 21:22:56)


int i = 0;
for (char *p = input; *p != '\0'; p += 2)
{
    if (p[1] == '\0')
    {
        /*¡¡¶ö¿ô¸Ä¤Ç¤Ê¤±¤ì¤ÐÀÚ¤ê¼Î¤Æ¤ë */
        break;
    }
    tmp[0] = p[0];
    tmp[1] = p[1];
    output[i++] = strtoul(&tmp, NULL, 16);
}

­¡ºÇ½é¤Ë strlen ¤Çʸ»ú¿ô¤ò·×¬¤·¤Ê¤¯¤Æ¤â¤è¤µ¤½¤¦¤Ç¤¹¡£
­¢½é¿´¼Ô¤Ë¤Ï¤¢¤ê¤¬¤Á¤Ê¤Î¤Ç¤¹¤¬¡¤ÌµÍý¤·¤Æ memcpy ¤ä strcpy ¤Ê¤É¤Î¥é¥ó¥¿¥¤¥à´Ø¿ô¤ò»È¤¦É¬ÍפϤ¢¤ê¤Þ¤»¤ó¡£Ã±½ã¤Ë£²Ê¸»ú¤ò¥³¥Ô¡¼¤·¤¿¤Û¤¦¤¬¤è¤ê¼«Á³¤ÇÌÀ²÷¤À¤È»×¤ï¤ì¤Þ¤¹¡£
­£Â¾¤ÎÊý¤¬»ØÅ¦¤¹¤ë¤È¤ª¤ê tmp[] ¤ª¤è¤Ó output[] ¤ËÂФ¹¤ë½é´ü²½¤â¤¢¤Þ¤ê°ÕÌ£¤¬¤¢¤ê¤Þ¤»¤ó¡£(¤¢¤Ã¤Æ¤âÌäÂê¤Ï¤Ê¤¤¤·¡¤¥Ç¥Ð¥Ã¥°»þ¤Ë¤ÏÊØÍø¤Ê¤³¤È¤â¤¢¤ë¤Î¤Ç¤¹¤¬)
­¤¶¯¤¤¤Æ¸À¤¦¤Ê¤é¡¤ÆüËܸì´Ä¶­¤Îʸ»úÎó¤Ç¤Ï unsigned char ¤ò»È¤Ã¤¿¤Û¤¦¤¬°ÂÁ´¤Ç¤¹¡£
­¥¤¤¤«¤ó¤»¤ó»ä¤ÏȯÁÛ¤¬ Ancient ¤Ê¤Î¤Ç¡¤ËÜÅö¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Ç»ÈÍѤ¹¤ë½èÍý¤Ç¤¢¤ì¤Ð strtoul ¤Ê¤É¤Î¥é¥ó¥¿¥¤¥à¤Ï»È¤ï¤º¡¤¼«Ê¬¤Ç¼ÂÁõ¤·¤Þ¤¹¡£¤½¤Î¤Û¤¦¤¬³Î¼Â¤Ç¤¹¡£
6) ¤È¤³¤í¤Ç for (int i = 0... ¤Î¤è¤¦¤Êµ­½Ò¤Ï C ¤Ç¤Ï¤Ê¤¯ C++ ¤Ç¤Ï¡©

No.916

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---YuO(2003/12/29 17:32:33)


>(5) ¤¤¤«¤ó¤»¤ó»ä¤ÏȯÁÛ¤¬ Ancient ¤Ê¤Î¤Ç¡¤ËÜÅö¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Ç»ÈÍѤ¹¤ë½èÍý¤Ç¤¢¤ì¤Ð strtoul ¤Ê¤É¤Î¥é¥ó¥¿¥¤¥à¤Ï»È¤ï¤º¡¤¼«Ê¬¤Ç¼ÂÁõ¤·¤Þ¤¹¡£¤½¤Î¤Û¤¦¤¬³Î¼Â¤Ç¤¹¡£

³Î¼Â¤È¤Ï¡©

ɸ½à´Ø¿ô¤ò»È¤¦¤³¤È¤Ë¤è¤Ã¤Æ¡¤²¿¤ò¤·¤Æ¤¤¤ë¤«¤ò¾¤Î¥×¥í¥°¥é¥Þ(»þ´Ö·Ð²á¸å¤Î¼«Ê¬´Þ¤à)¤ËÂФ·¤Æ¡¤
¥³¥á¥ó¥È̵¤·¤ÇÌÀ¼¨¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¤Þ¤¿¡¤É¸½à´Ø¿ô¤ÏºÇÄã¸Â¤Î¥Æ¥¹¥È¤ò¤·¤Æ¤¤¤ë¤³¤È¤¬Í½Â¬¤µ¤ì¤Þ¤¹¤·¡¤
°ìÈÌŪ¤Ë»È¤ï¤ì¤ë¤è¤¦¤Ê´Ø¿ô(strtoul¤Ê¤É)¤Ç¤Ï¡¤ÂçÎ̤Υ桼¥¶¡¼¤Ë¤è¤ë¥Á¥§¥Ã¥¯¤¬¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
ÉʼÁÌ̤ˤª¤¤¤Æ¡¤É¸½à´Ø¿ô¤òÈ´¤¯¤³¤È¤ÏÆñ¤·¤¤¤Ç¤¹¡£
¡ôɸ½à´Ø¿ô¤è¤ê¤âÀ©¸Â¤ò¶¯¤á¤ì¤Ð¡¤¾®¤µ¤¯Â®¤¤¥ë¡¼¥Á¥ó¤ò½ñ¤¯¤³¤È¤Ï²Äǽ¤Ç¤¹¤¬¡Ä¡Ä¡£

¤½¤â¤½¤â¡¤É¸½à´Ø¿ô¤ò»È¤ï¤Ê¤¤¤³¤È¤Ë¤è¤ëÍøÅÀ¤¬¤ß¤Ä¤«¤ê¤Þ¤»¤ó¡£


>(6) ¤È¤³¤í¤Ç for (int i = 0... ¤Î¤è¤¦¤Êµ­½Ò¤Ï C ¤Ç¤Ï¤Ê¤¯ C++ ¤Ç¤Ï¡©

»×¤¤¤Ã¤­¤êC¤Ç¤¹¤è¡£
ISO/IEC 9899:1999¤Ç¤Á¤ã¤ó¤Èǧ¤á¤é¤ì¤Æ¤¤¤Þ¤¹¡£


No.917

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---Ancient Hacker(2003/12/29 23:14:32)


>ɸ½à´Ø¿ô¤ò»È¤¦¤³¤È¤Ë¤è¤Ã¤Æ...¥³¥á¥ó¥È̵¤·¤ÇÌÀ¼¨¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¸À¤ï¤ó¤È¤¹¤ë¤È¤³¤í¤Ï¤ï¤«¤ë¤Î¤Ç¤¹¤¬¡¤½é¿´¼Ô¤Î¤«¤¿¤â¸«¤Æ¤¤¤Þ¤¹¡£¥½¡¼¥¹¥³¡¼¥É¤Ë¤Ï¤¼¤Ò¤È¤â¥³¥á¥ó¥È¤ò½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤ï¤«¤ê¤­¤Ã¤¿½èÍý¤Ç¤â¡¤¤¿¤È¤¨É¸½à¥é¥¤¥Ö¥é¥ê¤ò»È¤Ã¤Æ¤¤¤Æ¤â¡¤ÈÑàô¤Ë¤Ê¤é¤Ê¤¤¸Â¤ê¤Ï¥³¥á¥ó¥È¤ò½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤ÏÂÀ¸Å¤«¤é¤ÎÀè¿Í¤ÎÃηäǤ¹¡ª¡Ê¤½¤Î¤ï¤ê¤Ë¤Ï»ä¤ÎÎ㼨¤·¤¿¥³¡¼¥É¤Ë¤Ï¥³¥á¥ó¥È¤¬¤¢¤ê¤Þ¤»¤ó¢«¶§°­¡Ë

>ɸ½à´Ø¿ô¤è¤ê¤âÀ©¸Â¤ò¶¯¤á¤ì¤Ð¡¤¾®¤µ¤¯Â®¤¤¥ë¡¼¥Á¥ó¤ò½ñ¤¯¤³¤È¤Ï²Äǽ¤Ç¤¹
¾®¤µ¤¯Â®¤¤¥ë¡¼¥Á¥ó¤È¤¤¤¦¤Î¤â¡¤ºòº£¤Ç¤Ï¤µ¤Û¤É½ÅÍפǤϤ¢¤ê¤Þ¤»¤ó¡ÊÀ¤¤Ë¤Ï x86 ¥×¥í¥»¥Ã¥µ¤ÎÌ¿Î᥵¥¤¥º¤ä¥Ú¥¢¥ê¥ó¥°¡¦¥¹¥È¡¼¥ë¤ò¤¤¤¿¤¯µ¤¤Ë¤¹¤ë¿Í¡¹¤â¤¤¤Þ¤¹¤¬¡¤¤½¤¦¤·¤¿ºÇŬ²È¤Î½ô»á¤Ë¤È¤Ã¤Æ¤ÏÌ¥ÎÏŪ¤Ç¤·¤ç¤¦¡Ë»ä¤Ï¤à¤·¤í¡ÖÀ©¸Â¤ò¶¯¤á¤ì¤Ð¡×¤È¤¤¤¦ÅÀ¤Ë½Å¤­¤òÃÖ¤­¤¿¤¤¤Î¤Ç¤¹¡£¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Î¥½¡¼¥¹¥³¡¼¥É¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¤¬¡¤¤¿¤È¤¨¤Ðʸ»ú¤Î¸¡ºº¤¬Éϼå¤Ê¤¿¤á´Ø¿ô¤ÎÃæ¤Û¤É¤À¤±¤ò½¤Àµ¡Ê¶¯²½¡Ë¤·¤¿¤¤¾ìÌ̤¬¤¢¤ê¤Þ¤¹¡Êº£²ó¤Î·ï¤Ï¤½¤¦¤Ç¤â¤¢¤ê¤Þ¤»¤ó¤¬¡Ë¡£¥é¥¤¥Ö¥é¥ê´Ø¿ô¤ò»È¤ª¤¦¤È¤·¤Æ¡¤¤½¤ÎÁ°¸å¤Çưºî¤òÊäÀµ¤¹¤ë¤è¤¦¤Ê½èÍý¤ò½ñ¤¯¤È¡¤¤Ò¤É¤¯ÉÔ¼«Á³¤Ê½èÍý¤Ë¤Ê¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤à¤·¤í¥é¥¤¥Ö¥é¥ê´Ø¿ô¡Ê¤Î½¤Àµ¥Ð¡¼¥¸¥ç¥ó¡Ë¤ò¤Þ¤ë¤´¤È¤´¤Ã¤½¤ê¼«Ê¬¤Ç¼ÂÁõ¤·¤¿¤Û¤¦¤¬¡Öưºî¤Î¾ÜºÙ¡×¤¬³Î¼Â¤Ë¤Ê¤ë¤³¤È¤¬¤¢¤ë¤Î¤Ç¤¹¡£

>°ìÈÌŪ¤Ë...ÂçÎ̤Υ桼¥¶¡¼¤Ë¤è¤ë¥Á¥§¥Ã¥¯¤¬¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ÉʼÁÌ̤ˤª¤¤¤Æ¡¤É¸½à´Ø¿ô¤òÈ´¤¯¤³¤È¤ÏÆñ¤·¤¤¤Ç¤¹¡£
¥æ¡¼¥¶¡¼¡Ê¥×¥í¥°¥é¥Þ¡¼¡Ë¤¬¥Á¥§¥Ã¥¯¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤«¤Ã¤¿¥é¥¤¥Ö¥é¥ê¤È¤¤¤¦¤Î¤Ï¡¤ÉʼÁ¤ËÌäÂê¤Î¤¢¤ë¡¤¿®Íꤹ¤ë¤Ë­¤ê¤Ê¤¤¥é¥¤¥Ö¥é¥ê¤À¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¤¬¡¤¤³¤ÎÏÀÍý¤Ï¤¤¤µ¤µ¤«ÕûÍý¶þ¤¸¤ß¤Æ¤¤¤Þ¤¹¡£¤½¤ì¤Ï¤È¤â¤«¤¯¡¤¸½¼ÂŪ¤Ë¸«¤Æ¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Ïº¤¤Ã¤¿¤³¤È¤ËÀäÂгμ¤ȤޤǤϤ¤¤­¤Þ¤»¤ó¡£±Ñ¸ì¤òÊì¹ñ¸ì¤È¤·¤Æ¤¤¤ëÄ󶡸µ¡Ê¤Î¥×¥í¥°¥é¥Þ¡¼¡Ë¤¬Ä󶡤¹¤ë¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»úÍѥ饤¥Ö¥é¥ê¤¬¡¤¤·¤Ð¤·¤ÐÌäÂê¤òÀ¸¤¸¤Æ¤¤¤¿¤Î¤Ï¤µ¤Û¤É²áµî¤Î¤³¤È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤Þ¤¿ 16 ¥Ó¥Ã¥È ¢ª 32 ¥Ó¥Ã¥È, 32 ¢ª 64 ¥Ó¥Ã¥È¤Î¤è¤¦¤Ë¥·¥¹¥Æ¥à´Ä¶­¤¬Â礭¤¯ÊѲ½¤·¤¿¾ì¹ç¤Ë¡¤¤½¤Î½éÈǶ᤯¤Î¥³¥ó¥Ñ¥¤¥é¡Ê¤ª¤è¤Ó°ì½ï¤ËÄ󶡤µ¤ì¤¿¥é¥¤¥Ö¥é¥ê¡Ë¤¬ÉÔ¶ñ¹ç¤ò´Þ¤à²ÄǽÀ­¤¬¹â¤¤¤³¤È¤Ï¡¤Â¿¤¯¤Î³«È¯¼Ô¤Îǧ¤á¤ë¤È¤³¤í¤Ç¤¹¡£ºÇ½ªÅª¤Ë¤Ï²þÁ±¤µ¤ì¤ë¤Î¤Ç¤·¤ç¤¦¤¬¡¤¤½¤ì¤òÂԤäƤ¤¤é¤ì¤Ê¤¤¾õ¶·¤â¤¢¤ê¤Þ¤¹¡£

>ɸ½à´Ø¿ô¤ò»È¤ï¤Ê¤¤¤³¤È¤Ë¤è¤ëÍøÅÀ¤¬¤ß¤Ä¤«¤ê¤Þ¤»¤ó¡£
ÍøÅÀ¤Î̵ͭ¤Ë´Ø¤·¤Æ¤Ï¤Þ¤Ã¤¿¤¯¿¨¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤·¤«¤·¡¤ÍøÅÀ¤¬¤Ê¤¤¤È»×¤¨¤Ð¤¼¤Ò¤È¤âɸ½à´Ø¿ô¤ò»È¤Ã¤Æ²¼¤µ¤¤¡£Àè¿Í¤¬ÃÛ¤¤¤¿µ»½Ñ¤ò¤¦¤Þ¤¯ÍøÍѤ¹¤ë¤³¤È¤â¡¤¥×¥í¥°¥é¥Þ¡¼¤Î½ÅÍפʥ¹¥­¥ë¤Î¤Ò¤È¤Ä¤Ç¤¹¡£

>ISO/IEC 9899:1999
¡¡½é¼ª¤Ç¤¹¡Ê¤É¤¦¤¤¤Ã¤¿¤³¤È¤¬µ¬³Ê²½¡¦ÌÀʸ²½¤µ¤ì¤Æ¤¤¤ë¤«¤Ë´Ø¤·¤Æ¤Ï¡¤»ä¤Ï¤¤¤Þ¤À¤«¤Ä¤ÆºÙÉô¤ò³Îǧ¤·¤¿¤³¤È¤¬¤¢¤ê¤Þ¤»¤ó¡Ë£Ã¸À¸ì¤â¤¼¤Ò¤È¤â¿Ê²½¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ºòº£¤Ç¤Ï¥ª¥Ö¥¸¥§¥¯¥È»Ø¸þ¤Ë²¡¤µ¤ìµ¤Ì£¤Ç¤¹¤¬¡¤£Ã¤Ï¤Þ¤À¤Þ¤À»È¤¨¤ë¶¯ÎϤʸÀ¸ì¤Ç¤¹¡£

¡¡¤Ê¤ª¡¤»ä¤¬°ÊÁ°¤Ë·Ç¼¨¤·¤¿¥µ¥ó¥×¥ëÃæ¤ÇÊÑ¿ôÀë¸À¤ª¤è¤Ó¥ë¡¼¥×Á°½èÍý¤È¤·¤Æ¤Î tmp[2] = '\0' ¤¬·çÍ¤Æ¤¤¤Þ¤¹¡Ê¢«¤³¤³¤â¥Ä¥Ã¥³¤ó¤Ç¤Û¤·¤«¤Ã¤¿¡ª¡Ë¡£¤Þ¤¿¡¤Ê¸¥µ¥¤¥º½Ì¾®¤Î¤¿¤áËܥ쥹¤Ç¤Î°úÍÑʸ¤ò°ìÉô¾Êά¤·¤Æ¤¤¤Þ¤¹¤¬¡¤°­¤·¤«¤é¤º¤´Î»¾µ¤¯¤À¤µ¤¤¡£¤µ¤é¤Ë¤Þ¤¿¡¤ºÇ½é¤Î 16 ¿Ê¥Ç¡¼¥¿±¾¡¹¤È¤ÏÆâÍÆ¤¬ÂçÉý¤ËÊѤï¤Ã¤Æ¤·¤Þ¤Ã¤¿¤³¤È¤ªÏͤӤ¤¤¿¤·¤Þ¤¹¡£

No.940

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---YuO(2004/01/05 23:50:43)


>>ɸ½à´Ø¿ô¤ò»È¤¦¤³¤È¤Ë¤è¤Ã¤Æ...¥³¥á¥ó¥È̵¤·¤ÇÌÀ¼¨¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
>¸À¤ï¤ó¤È¤¹¤ë¤È¤³¤í¤Ï¤ï¤«¤ë¤Î¤Ç¤¹¤¬¡¤½é¿´¼Ô¤Î¤«¤¿¤â¸«¤Æ¤¤¤Þ¤¹¡£
>¥½¡¼¥¹¥³¡¼¥É¤Ë¤Ï¤¼¤Ò¤È¤â¥³¥á¥ó¥È¤ò½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£
>¤¿¤È¤¨¤ï¤«¤ê¤­¤Ã¤¿½èÍý¤Ç¤â¡¤¤¿¤È¤¨É¸½à¥é¥¤¥Ö¥é¥ê¤ò»È¤Ã¤Æ¤¤¤Æ¤â¡¤ÈÑàô¤Ë¤Ê¤é¤Ê¤¤¸Â¤ê¤Ï¥³¥á¥ó¥È¤ò½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£

Èóɸ½à¤Î´Ø¿ô¤Ë´Ø¤·¤Æ¤Ï¡¤¥³¥á¥ó¥È¤ò½ñ¤¯°ÕµÁ¤Ï¤¢¤ë¤È»×¤¤¤Þ¤¹¤¬¡¤
ɸ½à¤Î´Ø¿ô¤Ë´Ø¤·¤Æ¡¤¥³¥á¥ó¥È¤ò½ñ¤¯°ÕµÁ¤Ï̵¤¤¤Ç¤¹¡£
puts("Hello, world!"); /* Hello, world!¤È²þ¹Ô¤òɸ½à½ÐÎϤ˽ÐÎϤ¹¤ë */

¤Ê¤ó¤Æ¤¤¤¦¤Î¤Ï¾éĹ¤Ê¤À¤±¤Ç¤¹¡£
¡ô¥³¥á¥ó¥È¼«ÂΡ¤½èÍý¤Î²ôñ°Ì¤Ç½½Ê¬¤Êµ¤¤¬¤·¤Þ¤¹¤±¤É¤Í¡Ä¡Ä¡£


>>ɸ½à´Ø¿ô¤è¤ê¤âÀ©¸Â¤ò¶¯¤á¤ì¤Ð¡¤¾®¤µ¤¯Â®¤¤¥ë¡¼¥Á¥ó¤ò½ñ¤¯¤³¤È¤Ï²Äǽ¤Ç¤¹
>¾®¤µ¤¯Â®¤¤¥ë¡¼¥Á¥ó¤È¤¤¤¦¤Î¤â¡¤ºòº£¤Ç¤Ï¤µ¤Û¤É½ÅÍפǤϤ¢¤ê¤Þ¤»¤ó¡£

¤â¤Á¤í¤ó¡¤¤½¤ì¤Ï¤ï¤«¤Ã¤Æ¤¤¤Þ¤¹¡£

»ä¤¬¹Í¤¨¤ëɸ½à´Ø¿ô¤ò»È¤ï¤Ê¤¤¾ì½ê¤È¤Ï¼¡¤Î¤è¤¦¤Êʪ¤Ç¤¹¡£
time-critical¤Ê¾ì½ê¤Ë¤ª¤¤¤ÆÉ¸½à´Ø¿ô¤ÎÈÆÍÑÀ­¤¬ÉÔÍפʾì¹ç¡£
¤³¤ì¤òÁ°Äó¤È¤·¤ÆÀè¤Î¤è¤¦¤Ê¤³¤È¤ò½ñ¤­¤Þ¤·¤¿¡£ÆþÎϤËÁ°Äó¤òÀߤ±¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¤¥Á¥§¥Ã¥¯¤ò¾Ê¤¤¤¿¤ê¡¤¹â®¤Ê¥¢¥ë¥´¥ê¥º¥à¤ò»È¤Ã¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£C++¤ÎÎã¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¤unsigned char buf[5];¤òµÕ½ç¤Ë¤¹¤ë¤Î¤Ë
std::reverse(buf, buf + 5);
¤È¤¹¤ë¤è¤ê¤â¡¤
inline void reverse_uchar_array_5 (unsigned char * p) {
    unsigned char t = p[0];
    p[0] = p[4];
    p[4] = t;
    t = p[1];
    p[1] = p[3];
    p[3] = t;
}
¤òÍøÍѤ·¤¿Êý¤¬°µÅÝŪ¤Ë®¤¯¤Ê¤ê¤Þ¤¹(Efficient C++ 11.7¤è¤ê¼ã´³Êѹ¹)¡£ ¤³¤ì¤Ï¡¤reverse¤ÏÈÆÍѤʤΤǡ¤¤³¤ì¤é¤Î¥³¡¼¥É¤ò¥ë¡¼¥×¤Ç¼Â¸½¤¹¤ë¤³¤È¤Ë¤Ê¤ë°Ù¤Ç¤¹¡£
ɸ½à¤Ç½èÍýÊýË¡¤¬Äê¤á¤é¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤ËÆÃÄê¤ÎÊýË¡¤òÍøÍѤ·¤¿¤¤¾ì¹ç¡£
bsearch¡¤qsort¡¤srand¤ärand¤Ê¤É¤¬ÁêÅö¤·¤Þ¤¹¡£
¼ÂÁõÄêµÁưºî¤Ë´ØÏ¢¤¹¤ë¾ì¹ç¡£
Î㤨¤Ð¡¤¥ï¥¤¥Éʸ»ú¤È¤·¤ÆUCS-2¤òUTF-16¤ÇÍøÍѤ·¤Æ¤¤¤ë½èÍý·Ï¤Ë¤ª¤¤¤Æ¤â¡¤Â¿¥Ð¥¤¥Èʸ»úÎ󤫤éUTF-16¤ËÊÑ´¹¤¹¤ë¤¿¤á¤Ëmbstowcs¤ò»È¤ï¤º¤Ë¼«Ê¬¤Ç½ñ¤¯¤È¤­¤Ê¤É¡£



>¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Î¥½¡¼¥¹¥³¡¼¥É¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¤¬¡¤¤¿¤È¤¨¤Ðʸ»ú¤Î¸¡ºº¤¬Éϼå¤Ê¤¿¤á´Ø¿ô¤ÎÃæ¤Û¤É¤À¤±¤ò½¤Àµ¡Ê¶¯²½¡Ë¤·¤¿¤¤¾ìÌ̤¬¤¢¤ê¤Þ¤¹¡£
>¥é¥¤¥Ö¥é¥ê´Ø¿ô¤ò»È¤ª¤¦¤È¤·¤Æ¡¤¤½¤ÎÁ°¸å¤Çưºî¤òÊäÀµ¤¹¤ë¤è¤¦¤Ê½èÍý¤ò½ñ¤¯¤È¡¤¤Ò¤É¤¯ÉÔ¼«Á³¤Ê½èÍý¤Ë¤Ê¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
>¤à¤·¤í¥é¥¤¥Ö¥é¥ê´Ø¿ô¡Ê¤Î½¤Àµ¥Ð¡¼¥¸¥ç¥ó¡Ë¤ò¤Þ¤ë¤´¤È¤´¤Ã¤½¤ê¼«Ê¬¤Ç¼ÂÁõ¤·¤¿¤Û¤¦¤¬¡Öưºî¤Î¾ÜºÙ¡×¤¬³Î¼Â¤Ë¤Ê¤ë¤³¤È¤¬¤¢¤ë¤Î¤Ç¤¹¡£

ưºî¤¬³Î¼Â¤Ç¤Ê¤¯¤Ê¤ë¤Î¤Ï¡¤´Ø¿ô¼«ÂΤǤϤʤ¯ÊäÀµ¥ë¡¼¥Á¥ó¤Î¤»¤¤¤Ç¤¹¤è¤Í¡£
¤â¤È¤â¤ÈËÜÍè¤Î´Ø¿ô¤Î»ÅÍͤËÄɲäǾò·ï¤ò²Ã¤¨¤Æ¤¤¤ë¤Î¤Ç¤¹¤«¤é¡¤
¤½¤ÎÊäÀµ¥ë¡¼¥Á¥ó¦¤ò¤Á¤ã¤ó¤Èºî¤ì¤Ð¡¤Æ°ºî¼«ÂΤϤÁ¤ã¤ó¤È³Î¼Â¤Ë¤Ê¤ê¤Þ¤¹¡£


>¤½¤ì¤Ï¤È¤â¤«¤¯¡¤¸½¼ÂŪ¤Ë¸«¤Æ¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Ïº¤¤Ã¤¿¤³¤È¤ËÀäÂгμ¤ȤޤǤϤ¤¤­¤Þ¤»¤ó¡£±Ñ¸ì¤òÊì¹ñ¸ì¤È¤·¤Æ¤¤¤ëÄ󶡸µ¡Ê¤Î¥×¥í¥°¥é¥Þ¡¼¡Ë¤¬Ä󶡤¹¤ë¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»úÍѥ饤¥Ö¥é¥ê¤¬¡¤¤·¤Ð¤·¤ÐÌäÂê¤òÀ¸¤¸¤Æ¤¤¤¿¤Î¤Ï¤µ¤Û¤É²áµî¤Î¤³¤È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
>¤Þ¤¿ 16 ¥Ó¥Ã¥È ¢ª 32 ¥Ó¥Ã¥È, 32 ¢ª 64 ¥Ó¥Ã¥È¤Î¤è¤¦¤Ë¥·¥¹¥Æ¥à´Ä¶­¤¬Â礭¤¯ÊѲ½¤·¤¿¾ì¹ç¤Ë¡¤¤½¤Î½éÈǶ᤯¤Î¥³¥ó¥Ñ¥¤¥é¡Ê¤ª¤è¤Ó°ì½ï¤ËÄ󶡤µ¤ì¤¿¥é¥¤¥Ö¥é¥ê¡Ë¤¬ÉÔ¶ñ¹ç¤ò´Þ¤à²ÄǽÀ­¤¬¹â¤¤¤³¤È¤Ï¡¤Â¿¤¯¤Î³«È¯¼Ô¤Îǧ¤á¤ë¤È¤³¤í¤Ç¤¹¡£

ɸ½à´Ø¿ô¤Ë¿¥Ð¥¤¥Èʸ»úÎóÍÑ´Ø¿ô¤Ï¤Û¤È¤ó¤É¸ºß¤·¤Ê¤¤¤È»×¤¤¤Þ¤¹¤¬¡Ä¡Ä¡£
¤Þ¤¿¡¤¸å¼Ô¤ÏÆÃÄê¤Î´Ä¶­¤Ë¤ª¤±¤ëÌäÂê¤Ç¤¢¤Ã¤Æ¡¤¥Ð¡¼¥¸¥ç¥ó¥¢¥Ã¥×¤Ë¤è¤Ã¤Æ²ò·è¤µ¤ì¤¦¤ëÌäÂê¤Ç¤¹¡£

¤É¤Á¤é¤Ë¤·¤Æ¤â¡¤¤Þ¤º¤Ïɸ½à´Ø¿ô¤ò»È¤¤¡¤¤½¤ì¤¬buggy¤Ê¤éÂåÂØ´Ø¿ô¤òºî¤Ã¤Æ¥×¥ê¥×¥í¥»¥Ã¥µ¤ÇÀÚ¤êʬ¤±¤ë¡¤
¤È¤¤¤¦Êý¤¬¡Ö³Î¼Â¡×¤À¤È»×¤¤¤Þ¤¹¤±¤É¡£
¡ô¤Ä¤Þ¤ê¡¤É¸½à´Ø¿ô¤ò»È¤ï¤Ê¤¤¤È¤¤¤¦ÁªÂò»è¤ÏºÇ½é¤Ï¸ºß¤·¤Ê¤¤¡£


¤Á¤Ê¤ß¤Ë¡¤Èóɸ½à¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Ë´Ø¤·¤Æ¤Ï¡¤ºÇ½é¤«¤é»È¤ï¤Ê¤¤¤È¤¤¤¦ÁªÂò»è¤¬Â¸ºß¤¹¤ë¤È»×¤Ã¤Æ¤¤¤Þ¤¹¡£
°Ü¿¢À­¤¬Á´¤¯¤Ê¤¯¤Ê¤ë¤¿¤á¤Ç¤¹¡£
¡ô¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¥¢¥Ã¥×¤ò´Þ¤à¡£


>>ɸ½à´Ø¿ô¤ò»È¤ï¤Ê¤¤¤³¤È¤Ë¤è¤ëÍøÅÀ¤¬¤ß¤Ä¤«¤ê¤Þ¤»¤ó¡£
>ÍøÅÀ¤Î̵ͭ¤Ë´Ø¤·¤Æ¤Ï¤Þ¤Ã¤¿¤¯¿¨¤ì¤Æ¤¤¤Þ¤»¤ó¡£

ÍøÅÀ¤¬¤¢¤ë¤«¤é¤³¤½¡¤
>>>(5)¤¤¤«¤ó¤»¤ó»ä¤ÏȯÁÛ¤¬ Ancient ¤Ê¤Î¤Ç¡¤ËÜÅö¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Ç»ÈÍѤ¹¤ë½èÍý¤Ç¤¢¤ì¤Ð strtoul ¤Ê¤É¤Î¥é¥ó¥¿¥¤¥à¤Ï»È¤ï¤º¡¤¼«Ê¬¤Ç¼ÂÁõ¤·¤Þ¤¹¡£¤½¤Î¤Û¤¦¤¬³Î¼Â¤Ç¤¹¡£
¤È½ñ¤¤¤¿¤Î¤Ç¤Ï¤Ê¤¤¤Î¤Ç¤¹¤«¡Ä¡Ä¡©


¤½¤¦¤½¤¦¡¤¤³¤³¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ÏEUC-JP¤Ê¤Î¤ÇADA1¡ÁADA5¤Ë¤¢¤¿¤ëʸ»ú¤Ï¸ºß¤·¤Þ¤»¤ó¡£
Windows¤Ç½ñ¤¤¤¿¤Èͽ¬¤·¤Æ(5)¤Ëľ¤·¤Þ¤·¤¿¤¬¡¤(ÌÚ)¤ÎÊý¤¬¤è¤«¤Ã¤¿¤Ç¤¹¤«¡©


No.941

Re:16¿Ê¥Ç¡¼¥¿Îó¤ò ½ç¤Ë10¿Ê¿ô¤ËÊÑ´¹¤¹¤ë
Åê¹Æ¼Ô---nop(2004/01/06 00:32:44)


Ĺ¡¹¤È½ñ¤¤¤Æ¤Þ¤¹¤¬¡¢

>¤³¤ì¤ÏÂÀ¸Å¤«¤é¤ÎÀè¿Í¤ÎÃηäǤ¹¡£

¤È¸À¤Ã¤Æ¤ª¤­¤Ê¤¬¤é¡¢
¡ÖÀè¿Í¤ÎÃηáפη뽸¤Ç¤¢¤ëɸ½à´Ø¿ô¤ò»ÈÍѤ·¤¿¤¬¤é¤Ê¤¤»þÅÀ¤ÇÍýÏÀ¤¬ÇËþ¤·¤Æ¤ë¤«¤È¡£



P.S.¤³¤ì°Ê¾å¤Ï޽ŽÚ°ã¤¤¤«¤È¡£

ŽÖŽºŽÔŽØ¼ºÎé¡£