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

LinuxÖÐÕýÈ·´¦Àíerrno

errno±äÁ¿(Ðèinclude errno.h)»á±»¸³Ò»¸öÕûÊýÖµ,²»Í¬µÄÖµ±íʾ²»Í¬µÄº¬Òå,
¿ÉÒÔͨ¹ý²é¿´¸ÃÖµÍÆ²â³ö´íµÄÔ­Òò¡£µ«ÊÇerrnoÊÇÒ»¸öÊý×Ö£¬´ú±íµÄ¾ßÌ庬Òå
»¹Òªµ½errno.hÖÐÈ¥ÔĶÁºê¶¨Òå¡£ÓÐÏÂÃæ¼¸ÖÖ·½·¨¿ÉÒÔ·½±ãµÄµÃµ½´íÎóÐÅÏ¢
(Ò»)
#include <stdio.h>
void perror(const char *s)
perror()ÓÃÀ´½«ÉÏÒ»¸öº¯Êý·¢Éú´íÎóµÄÔ­ÒòÊä³öµ½stderr¡£²ÎÊýsËùÖ¸µÄ×Ö·û´®»áÏÈ
´òÓ¡³ö£¬ºóÃæ¸úÒ»¸öðºÅºÍÒ»¸ö¿Õ¸ñÔÙ¼ÓÉÏ´íÎóÔ­Òò×Ö·û´®  ºóÃæÔÙ¼ÓÉÏÒ»¸ö»»Ðзû¡£
´Ë´íÎóÔ­ÒòÒÀÕÕÈ«¾Ö±äÁ¿errnoµÄ Ö±À´¾ö¶¨Òª
Êä³öµÄ×Ö·û´®
*******/
#include<stdio.h>
#include<stdlib.h>
int main ()
{
 FILE *fp;
 fp=fopen("/tmp/xx","r+");
 if(fp==NULL) perror("fopen");
 return 0;
 }
£¨¶þ£©
#include <string.h>
char * strerror(int errnum)
º¯Êý˵Ã÷ strerror£¨£©ÓÃÀ´ÒÀ²ÎÊýerrnumµÄ´íÎóÂëÀ´²éѯ´íÎóÔ­Òò
µÄÃèÊö×Ö·û´®£¬È»ºó½«¸Ã×Ö·û´®Ö¸Õë·µ»Ø¡£
Õâ¸öº¯Êý±¾Éí²¢²»»á±§´í ËùÒÔûÓÐΪÕâ¸öº¯Êý±£ÁôÏìÓ¦µÄ´íÎóÖµ
·µ»ØÖµ£º ·µ»ØÃèÊö´íÎóÔ­ÒòµÄ×Ö·û´®Ö¸Õë
****/
#include <string.h>
#include <stdio.h>
int main ()
{
 //ÏÔʾ´íÎó´úÂë0µ½9µÄ´íÎóÔ­ÒòÃèÊö
 int i;
 for(i=0;i<10;i++)
  fprintf(stderr,"%d:%s \n",i,strerror(i));
 return 0;
 }
 strerrorº¯Êý¿ÉÄÜ»á¸Ä±äerror¡£Èç¹ûÐèÒªÔÚµ÷ÓÃstrerrorºóÔÙ´ÎʹÓÃ
error £¬Ó¦¸ÃÔÚµ÷ÓÃstrerrorÇ®±£´æerror£¬²¢ÔÚÔÙ´ÎʹÓÃ֮ǰ½«Æä»Ö¸´¡£
ÏÂÃæµÄ´úÂë˵Ã÷ÈçºÎÔÚʹÓÃstrerrorµÄͬʱÒÀÈ»±£³ÖerrorµÄÖµ
int error;
int fildes;
if (close(fildes)==-1){
       error = errno;
       fprintf(stderr,"Failed to close descriptor %d :%s\n",
                 fildes,strerror(errono);
       errno =  error;
       }
ÕýÈ·µØ´¦ÀíerrnoÊǸö¼¬ÊÖµÄÎÊÌâ¡£ÓÉÓڿ⺯ÊýµÄʵÏÖÖпÉÄÜ»áµ÷ÓÃÆäËû¿ÉÒÔ
ÉèÖÃerrnoµÄº¯Êý£¬Òò´Ë£¬¼´Ê¹¿âº¯ÊýµÄÁª»ú°ïÖúÒ³ÃæÖÐûÓÐÏÔʾµÄ˵Ã÷£¬¿â
º¯Êý»¹ÊÇ»á¶Ôerrno½øÐÐÐ޸ġ£Í¬Ñù£¬Ó¦ÓóÌÐòÎÞ·¨Ð޸ĴÓstrerrorÖзµ»ØµÄ×Ö·û´®£


Ïà¹ØÎĵµ£º

linux fg bg ctrl + z jobs & µÈÃüÁî

fg¡¢bg¡¢jobs¡¢&¡¢ctrl + z¶¼ÊǸúϵͳÈÎÎñÓйصģ¬ËäÈ»ÏÖÔÚ»ù±¾Éϲ»ÔõôÐèÒªÓõ½ÕâЩÃüÁµ«Ñ§»áÁËÒ²ÊǺÜʵÓõÄ
Ò»¡£& ×î¾­³£±»Óõ½
Õâ¸öÓÃÔÚÒ»¸öÃüÁîµÄ×îºó£¬¿ÉÒÔ°ÑÕâ¸öÃüÁî·Åµ½ºǫִ́ÐÐ
¶þ¡£ctrl + z
¿ÉÒÔ½«Ò»¸öÕýÔÚǰִ̨ÐеÄÃüÁî·Åµ½ºǫ́£¬²¢ÇÒÔÝÍ£
Èý¡£jobs
²é¿´µ±Ç°ÓжàÉÙÔÚºǫ́ÔËÐеÄÃüÁî
ËÄ¡£fg
½ ......

linuxÍøÇÅÉèÖÃMACµØÖ·Ê±µÄÐÐΪ

brctl addbr br0
ifconfig br0
br0 MAC is 00:00:00:00:00:00
brctl addif br0 eth1  (eth1 is xx:xx:xx:xx:xx:33)
ifconfig br0
br0 MAC is xx:xx:xx:xx:xx:33  same as eth1, auto change
brctl addif br0 eth2  (eth2 is xx:xx:xx:xx:xx:30)
ifconfig br0
br0 MAC is xx:xx:xx:xx:xx:30  sa ......

LINUX·ÖÒ³»úÖÆ

ÏßÐÔ—ÎïÀíµØÖ·µÄת»»£¬¿É½«ÆäÒâÒåÀ©Õ¹ÎªÔÊÐí½«Ò»¸öÏßÐÔµØÖ·±ê¼ÇΪÎÞЧ£¬¶ø²»ÊÇʵ¼ÊµØ²úÉúÒ»¸öÎïÀíµØÖ·¡£ÓÐÁ½ÖÖÇé¿ö¿ÉÄÜʹҳ±»±ê¼ÇΪÎÞЧ£ºÆäÒ»ÊÇÏßÐÔµØÖ·ÊDzÙ×÷ϵͳ²»Ö§³ÖµÄµØÖ·£»Æä¶þÊÇÔÚÐéÄâ´æ´¢Æ÷ϵͳÖУ¬ÏßÐÔµØÖ·¶ÔÓ¦µÄÒ³´æ´¢ÔÚ´ÅÅÌÉÏ£¬¶ø²»ÊÇ´æ´¢ÔÚÎïÀí´æ´¢Æ÷ÖС£ÔÚǰһÖÖÇé¿öÏ£¬³ÌÐòÒò²úÉúÁËÎÞЧµØÖ·¶ø±ØÐë±»Ö ......

libjpegµÄARM linuxÒÆÖ²

Ò»¡¢ÏÂÔØjpeg¿â
¶þ¡¢ÅäÖñàÒ룬Éú³ÉMakefileÎļþ¡£
#./configure --prefix=/usr/arm/arm-linux --exec-prefix=/usr/arm/arm-linux \
--enable-shared --enable-static
×¢Ò⣺prefixÊÇ×îºó°²×°Ê±¿â´æ·ÅµÄÎļþ£¬sharedÊDZàÒë³É¶¯Ì¬¿â£¬staticÊDZàÒë³É¾²Ì¬¿â
Èý¡¢ÐÞ¸ÄÉú³ÉµÄMakefile¡£
ʹÓÃgedit £Í£á£ë£å£æ£é£ì£å
½«CC ......

linuxÄÚºËÔ´ÂëÖг£¼ûºê¶¨Òå

1. gccµÄ__attribute__±àÒïÊôÐÔ
ÒªÁ˽âLinux Kernel´úÂëµÄ·Ö¶ÎÐÅÏ¢£¬ÐèÒªÁ˽âÒ»ÏÂgccµÄ__attribute__µÄ±àÒïÊôÐÔ£¬__attribute__Ö÷ÒªÓÃÓڸıäËùÉùÃ÷»ò¶¨ÒåµÄº¯Êý»òÊý¾ÝµÄÌØÐÔ£¬ËüÓкܶà×ÓÏÓÃÓڸıä×÷ÓöÔÏóµÄÌØÐÔ¡£±ÈÈç¶Ôº¯Êý£¬noline½«½ûÖ¹½øÐÐÄÚÁªÀ©Õ¹¡¢noreturn±íʾûÓзµ»ØÖµ¡¢pure±íÃ÷º¯Êý³ý·µ»ØÖµÍ⣬²»»áͨ¹ýÆäËü ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ