ÔÚcÖд¦Àíutf 8
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 ÒѾ²»ÓÃÁË */
&nbs
Ïà¹ØÎĵµ£º
Ò»¸ö¼òµ¥µÄC/S¶àÏß³ÌÓ¦ÓÃ,ÉÔ΢À©Õ¹¾Í¿ÉÒÔÓÃÁË
/*socketÊÇÍøÂçÓ¦ÓóÌÐòµÄºËÐÄ£¬ÔÚ·þÎñÆ÷¶Ë»ò¿Í»§¶ËÍøÂçÓ¦ÓóÌÐòÖУ¬socket½ÔΪ²»¿ÉȱÉÙµÄÒªËØ
*ÔÚ·þÎñÆ÷³£¼ûµÄÓ¦ÓÃÓУºFTP·þÎñÆ÷£¬MAIL·þÎñÆ÷£¨SMTP£¬POP3£¬IMAP4ÐÒ飩£¬WEB£¨HTTPÐÒ飩
*½¨Á¢·þÎñÆ÷¶ËSOCKETµÄÓ¦ÓóÌÐò²½ÖèÈçÏ£º
*1¡£½¨Á¢·þÎñÆ÷¶ËµÄSOCKET£¬²¢ÇÒÒÔ´ ......
½ñÌì¿´µ½Ò»ÖֱȽϰ²È«µÄö¾Ùд·¨£¡
enum example
{
item1 = 0,
item2,
item3,
item4,
item5,
max /* when you want to add element,please add before this */
};
µ±ÄãʹÓÃËüµÄʱºò£º
example ex1;
i ......
C ÓïÑÔ
CÓïÑÔÊÇÒ»ÖÖ¼ÆËã»úÓïÑÔ£¬¼òµ¥µÄ½²ËüÊÇÎÒÃǺͼÆËã»ú¹µÍ¨µÄÒ»ÖÖ¹¤¾ß£¬Í¨¹ýÕâÖÖÓïÑÔÎÒÃÇ¿ÉÒÔÒýµ¼¼ÆËã»úÈÃËü°´ÕÕÎÒÃǵÄÒâԸȥ×öÊ£¬À´ÎªÈËÀàÌṩ·þÎñ¡£±ÈÈçÄãµçÄÔÖеÄÒôÀÖ²¥·ÅÆ÷¡¢word¡¢qq¡¢Ñ¸À×£¨µ±È»ÕâЩÈí¼þµÄ±àд»¹Ó¦ÓÃÁËÇÒËû¹¤¾ß£©¡£
CÓïÑÔ¿ÉÒÔ×÷Ϊ¹¤×÷ϵͳÉè¼ÆÓïÑÔ£¬±àдϵͳӦÓóÌÐò£¬Ò²¿ÉÒÔ×÷Î ......
va_listÊÇc/c++ÓïÑÔÎÊÌâÖнâ¾ö¿É±ä²ÎÊýµÄÒ»×éºê.ÏÈÀ´¿´Ò»¸ö³ÌÐòÀý×Ó°É.
view plaincopy to clipboardprint?
#include <stdarg.h>
/**¡¡º¯ÊýÃû£ºmax
*¡¡¹¦ÄÜ£º·µ»Øn¸öÕûÊýÖеÄ×î´óÖµ
* ²ÎÊý£ºnum£ºÕûÊýµÄ¸öÊý . ......