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

LinuxÏÂת»»×Ö·û¼¯(UTF8ת»»)£¨

  LinuxÏÂת»»×Ö·û¼¯(UTF8ת»»)£¨×ª£© ÊÕ²Ø
 ÔÚLINUXÉϽøÐбàÂëת»»Ê±,¼È¿ÉÒÔÀûÓÃiconvº¯Êý×å±à³ÌʵÏÖ,Ò²¿ÉÒÔÀûÓÃiconvÃüÁîÀ´ÊµÏÖ,Ö»²»¹ýºóÕßÊÇÕë¶ÔÎļþµÄ,¼´½«Ö¸¶¨Îļþ´ÓÒ»ÖÖ±àÂëת»»ÎªÁíÒ»ÖÖ±àÂë¡£
Ò»¡¢ÀûÓÃiconvº¯Êý×å½øÐбàÂëת»»
iconvº¯Êý×åµÄÍ·ÎļþÊÇiconv.h,ʹÓÃǰÐè°üº¬Ö®¡£
#include <iconv.h>
iconvº¯Êý×åÓÐÈý¸öº¯Êý,Ô­ÐÍÈçÏÂ:
(1) iconv_t iconv_open(const char *tocode, const char *fromcode);
´Ëº¯Êý˵Ã÷½«Òª½øÐÐÄÄÁ½ÖÖ±àÂëµÄת»»,tocodeÊÇÄ¿±ê±àÂë,fromcodeÊÇÔ­±àÂë,¸Ãº¯Êý·µ»ØÒ»¸öת»»¾ä±ú,¹©ÒÔÏÂÁ½¸öº¯ÊýʹÓá£
(2) size_t iconv(iconv_t cd,char **inbuf,size_t *inbytesleft,char **outbuf,size_t *outbytesleft);
´Ëº¯Êý´ÓinbufÖжÁÈ¡×Ö·û,ת»»ºóÊä³öµ½outbufÖÐ,inbytesleftÓÃÒԼǼ»¹Î´×ª»»µÄ×Ö·ûÊý,outbytesleftÓÃÒԼǼÊä³ö»º³åµÄÊ£Óà¿Õ¼ä¡£
(3) int iconv_close(iconv_t cd);
´Ëº¯ÊýÓÃÓڹرÕת»»¾ä±ú,ÊÍ·Å×ÊÔ´¡£
Àý×Ó1: ÓÃCÓïÑÔʵÏÖµÄת»»Ê¾Àý³ÌÐò
/* f.c : ´úÂëת»»Ê¾ÀýC³ÌÐò */¾ßÌå½²£¬×Ô¼ºµÄÑé֤ʵÏÖÊǸù¾ÝÎÄÖеÄf.cʵÏÖµÄ
#include <iconv.h>
#define OUTLEN 255
main()
{
char *in_utf8 = "æ­£å?¨å??è£?";<=======´Ë×Ö·û´®Ëƺõ²¢²»ÊÇ“ÕýÔÚ°²×°”Ëĸö×ÖµÄUTF8µÄ¶ÔÕÕ´®£¬
char *in_gb2312 = "ÕýÔÚ°²×°";
char out[OUTLEN];
//unicodeÂëתΪgb2312Âë
rc = u2g(in_utf8,strlen(in_utf8),out,OUTLEN);
printf("unicode-->gb2312 out=%sn",out);
//gb2312ÂëתΪunicodeÂë
rc = g2u(in_gb2312,strlen(in_gb2312),out,OUTLEN);
printf("gb2312-->unicode out=%sn",out);
}
//´úÂëת»»:´ÓÒ»ÖÖ±àÂëתΪÁíÒ»ÖÖ±àÂë
int code_convert(char *from_charset,char *to_charset,char *inbuf,int inlen,char *outbuf,int outlen)
{
iconv_t cd;
int rc;
char **pin = &inbuf;
char **pout = &outbuf;
cd = iconv_open(to_charset,from_charset);
if (cd==0) return -1;
memset(outbuf,0,outlen);
if (iconv(cd,pin,&inlen,pout,&outlen)==-1) return -1;
iconv_close(cd);
return 0;
}
//UNICODEÂëתΪGB2312Âë
int u2g(char *inbuf,int inlen,char *outbuf,int outlen)
{
return code_convert("utf-8","gb2312",inbuf,inlen,outbuf,outlen);
}
//GB2312ÂëתΪUNICODEÂë
int g2u(char *inbuf,size_t inlen,char *outbuf,si


Ïà¹ØÎĵµ£º

linuxµÄfreeÃüÁîÖУ¬cachedºÍbuffersµÄÇø±ð

linuxµÄfreeÃüÁîÖУ¬cachedºÍbuffersµÄÇø±ð
Free
¡¡¡¡free ÃüÁîÏà¶ÔÓÚtop ÌṩÁ˸ü¼ò½àµÄ²é¿´ÏµÍ³ÄÚ´æÊ¹ÓÃÇé¿ö£º
¡¡¡¡$ free
¡¡¡¡total used free shared buffers cachedMem: 255268 238332 16936 0 85540 126384-/+ buffers/cache: 26408 228860Swap: 265000 0 265000
¡¡¡¡Mem£º±íʾÎïÀíÄÚ´æÍ³¼Æ
¡¡¡¡-/+ buffers/ca ......

Why do We Choose Linux?

Linux, named after the inventor, Linus Torvalds, is a so different OS for everyone against Windows. To everyone who used to use Windows, Linux need us to do more for everything which we usually do by computer, such as playing a video.
Someone says, Linux is for the ones who are good at the computer ......

Linux select()Ïê½â

Linux select()Ïê½â selectϵͳµ÷ÓÃÊÇÓÃÀ´ÈÃÎÒÃǵijÌÐò¼àÊÓ¶à¸öÎļþ¾ä±ú(file descriptor)µÄ״̬±ä»¯µÄ¡£³ÌÐò»áÍ£ÔÚselectÕâÀïµÈ´ý£¬Ö±µ½±»¼àÊÓµÄÎļþ¾ä±úÓÐijһ¸ö»ò¶à¸ö·¢ÉúÁË״̬¸Ä±ä¡£ ÎļþÔÚ¾ä±úÔÚLinuxÀïºÜ¶à£¬Èç¹ûÄãmanij¸öº¯Êý£¬ÔÚº¯Êý·µ»ØÖµ²¿·Ö˵µ½³É¹¦ºóÓÐÒ»¸öÎļþ¾ä±ú±»´´½¨µÄ¶¼Êǵģ¬Èçman socket¿ÉÒÔ¿´µ½&ldqu ......

ǶÈëʽLinux²Ù×÷ϵͳѧϰ¹æ»®

ǶÈëʽLinux²Ù×÷ϵͳѧϰ¹æ»®
ARM+LINUX·Ïߣ¬Ö÷¹¥Ç¶ÈëʽLinux²Ù×÷ϵͳ¼°ÆäÉÏÓ¦ÓÃÈí¼þ¿ª·¢Ä¿±ê£º 
£¨1£© ÕÆÎÕÖ÷Á÷ǶÈëʽ΢´¦ÀíÆ÷µÄ½á¹¹ÓëÔ­Àí£¨³õ²½¶¨Îªarm9£© 
£¨2£© ±ØÐëÕÆÎÕÒ»¸öǶÈëʽ²Ù×÷ϵͳ £¨³õ²½¶¨Îªuclinux»òlinux,°æ±¾´ý¶¨£© 
£¨3£© ±ØÐëÊìϤǶÈëʽÈí¼þ¿ª·¢Á÷³Ì²¢ÖÁÉÙ×öÒ ......

²é¿´linux·¢ÐаæºÍÄÚºËÐÅÏ¢

uname -a
cat /proc/version
cat /etc/issue
lsb_release -a (ÊÊÓÃÓÚËùÓеÄlinux£¬°üÀ¨Redhat¡¢SuSE¡¢DebianµÈ·¢Ðа棬µ«ÊÇÔÚdebianÏÂÒª°²×°lsb£¬²»°²×°¼ÓÉÏ£­a²ÎÊý²é¿´²¿·Ö)
È磺
·¢Ðа棺
# cat /etc/issue
Äںˣº
# uname -r
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ