Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÔÚcÖд¦Àíutf

UTF-8×î´óµÄÒ»¸öÌØµã£¬¾ÍÊÇËüÊÇÒ»Öֱ䳤µÄ±àÂ뷽ʽ¡£Ëü¿ÉÒÔʹÓÃ1~4¸ö×Ö½Ú±íʾһ¸ö·ûºÅ£¬¸ù¾Ý²»Í¬µÄ·ûºÅ¶ø±ä»¯×Ö½Ú³¤¶È¡£
UTF-8µÄ±àÂë¹æÔòºÜ¼òµ¥£¬Ö»ÓжþÌõ£º
1£©¶ÔÓÚµ¥×ֽڵķûºÅ£¬×ֽڵĵÚһλÉèΪ0£¬ºóÃæ7λΪÕâ¸ö·ûºÅµÄunicodeÂë¡£Òò´Ë¶ÔÓÚÓ¢Óï×Öĸ£¬UTF-8±àÂëºÍASCIIÂëÊÇÏàͬµÄ¡£
2£©¶ÔÓÚn×ֽڵķûºÅ£¨n>1£©£¬µÚÒ»¸ö×Ö½ÚµÄǰnλ¶¼ÉèΪ1£¬µÚn+1λÉèΪ0£¬ºóÃæ×Ö½ÚµÄǰÁ½Î»Ò»ÂÉÉèΪ10¡£Ê£ÏµÄûÓÐÌá¼°µÄ¶þ½øÖÆÎ»£¬È«²¿ÎªÕâ¸ö·ûºÅµÄunicodeÂë¡£
¿´´úÂë
size_t utf_length(u_char *p, size_t n)                                    // u_char*p Ö¸ÏòÒ»¸ö¿ÉÄܰüº¬utf-8µÄ×Ö·û´®£¬n = strlen(p)
{
    u_char      c;
    size_t      len;
    u_int32_t i;
    for (len = 0, i = 0; i < n; len++, i++) {
        c = p[i];
        if (c < 0x80) {      // 0x80 µÄ2½øÖƶȣ¨10000000£©£¬µ¥×Ö½ÚµÄʱºò£¬×î´óµÄ±àÂëÊÇ£¨01111111£©£¬ Ò²¾ÍÊÇ127£¬Ò²¾ÍÊÇascii
            continue;
        }
        if (c >= 0xc0) {   //¸ù¾Ýutf-8µÄµÚ2Ìõ¹æÔò£¬ Èç¹ûÊÇ2¸ö×Ö½Ú±àÂë³ÉÒ»¸ö·ûºÅµÄʱºò£¬ÄÇôӦ¸ÃÊÇ£¨110*****£¬10******£©
/*Èç¹ûÊÇ3¸ö×Ö½Ú±àÂë³ÉÒ»¸ö·ûºÅ£¬ ÄÇôӦ¸ÃÊÇ£¨1110****£¬10******£¬10******£©
   Èç¹ûÊÇ4¸ö×Ö½Ú±àÂë³ÉÒ»¸ö·ûºÅ£¬ ÄÇôӦ¸ÃÊÇ£¨11110***£¬10******£¬ 10******£¬10******£©
            for (c <<= 1; c & 0x80; c <<= 1) {  /*forµÄÓ÷¨£¬µÚÒ»¸ö´ú±í¸³³õʼֵ£¬ µÚ2¸öÅжϣ¬ µÚ3¸ö¸³Öµ£¬ µÚ2´ÎÑ­»·µÄʱºò£¬µÚÒ»¸öc<<1 ÒѾ­²»ÓÃÁË */
                i++; //Ìø¹ý


Ïà¹ØÎĵµ£º

ÖÐÐËͨѶC++/C±ÊÊÔÌâ(07)

C++/CÊÔÌâ   
±¾ÊÔÌâ½öÓÃÓÚ¿¼²éC++/C³ÌÐòÔ±µÄ»ù±¾±à³Ì¼¼ÄÜ¡£ÄÚÈÝÏÞÓÚC++/C³£ÓÃÓï·¨£¬²»Éæ¼°Êý¾Ý½á¹¹¡¢Ëã·¨ÒÔ¼°Éî°ÂµÄÓï·¨¡£¿¼ÊԳɼ¨ÄÜ·´Ó³³ö¿¼ÉúµÄ±à³ÌÖÊÁ¿ÒÔ¼°¶ÔC++/CµÄÀí½â³Ì¶È£¬µ«²»ÄÜ·´Ó³¿¼ÉúµÄÖÇÁ¦ºÍÈí¼þ¿ª·¢ÄÜÁ¦¡£
       ±ÊÊÔʱ¼ä90·ÖÖÓ¡£Ç뿼ÉúÈÏÕæ´ðÌ⣬ÇÐÎð ......

CÍ·Îļþ±àдԭÔò

ÔÚʹÓÃCÓïÑÔ±àд´óÐ͹¤³ÌʱҪÓõ½ÃæÏò¶ÔÏóÓïÑÔÖеÄÒ»Ð©ÌØÐÔ£¨ÄÚºËÖÐijЩ²¿·Ö¾ÍÓ¦ÓÃÁËÕâÐ©ÌØÐÔ£©¡£CÓïÑÔÊÇ»ùÓÚÎļþµÄÀ࣬static¹Ø¼ü×ÖÉùÃ÷˽ÓÐÊý¾Ý³ÉÔ±£¬¹«ÓÐÊý¾Ý³ÉÔ±±ØÐ붨Ò嵽ͷÎļþ£¬»òÓÉÆäËüÎļþʹÓÃextern¹Ø¼ü×ÖÉùÃ÷À´Ê¹Óᣵ«ºóÕßÒýÓùØÏµ²»ÇåÎú¡£Í·Îļþ¾Í³ÉÁ˹«ÓÐÊý¾Ý³ÉÔ±ÉùÃ÷µÄµØ·½¡£
Í·ÎļþÖÐÓ¦¸Ã°üº¬ÒÔϼ°·½ÃæÄÚ ......

£¨c primer plusµÚÎå°æ£©Ñ§Ï°±Ê¼Ç

 
 
µÚÒ»Õ¸ÅÀÀ
CÊÇÒ»ÖÖ±àÒëÐ͵ÄÓïÑÔ
±àÒëÐÍ£º¾ÍÊǰÑcÓïÑÔ±àÒë³É¼ÆËã»úÄÜÔËÐеĻúÆ÷´úÂë
²»Í¬µÄ¼ÆËã»úϵͳÓÐן÷×ԵıàÒëÆ÷£¬À´°Ñc±àÒë³É¶ÔÓ¦µÄ»úÆ÷´úÂë
ÌØÐÔ£º´úÂë¸ßЧ£¬¿ÉÒÆÖ²£¬¹¦ÄÜÇ¿´óºÍÁé»î
ȱµã£º´úÂë¸ñʽ×ÔÓÉ£¨ÌرðÊÇÖ¸ÕëµÄʹÓã©
 
CÓïÑÔÔËÐÐµÄÆß¸ö²½Ö裺
1.     ¶¨Ò ......

ÓÃCSocket¹¹½¨C/S½á¹¹

תÌûhttp://www.cppblog.com/bidepan2023/archive/2008/01/22/41632.html
CSocketÅÉÉúÓÚCAsyncSocket, ËùÓÐÊ©ÖîÓÚÉϵIJÙ×÷½ÔΪͬ²½²Ù×÷¡£±ÈÈçConnnect,ReceiveµÈ¡£
ͬ²½²Ù×÷µÄÓŵãÊǼòµ¥Ò×Ó㬵«È±µãÒ²ÏÔ¶øÒ×¼û£¬Ð§ÂʵÍÏ£¬ÒòΪÄã±ØÐëµÈµ½Ò»¸ö²Ù×÷Íê³ÉÖ®ºó²ÅÄܽøÐÐÏÂÒ»¸ö²Ù×÷¡£
Èç¹ûÄãºÜ¹ØÐÄЧÂÊ£¬¾ÍÓ¦¸ÃÓÅÏÈʹÓÃCAsyncS ......

Pelles C±àÒëÆ÷¼ò½é

Ö÷Ò³£º        http://www.christian-heffner.de/
ÏÂÔØÁ´½Ó£º  http://www.christian-heffner.de/index.php?page=download¡´=en
¼ò½é£º
»ùÓÚLCCµÄÒ»¿îC±àÒëÆ÷£¬Óбê×¼µÄIDE½çÃæ£¬ÀàËÆVCµÄ½çÃæ£¬µ±È»ºÍDEV-C++»¹ÓÐMingW32 studio½çÃæÒ²ºÜÏñ£¬¿ÉÒÔÓÃÓÚ´´½¨Ð¡Ò»µãµÄ»ùÓÚCµÄ¹¤³Ì¡£
IDE´úÂë±à¼­½ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ