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

Linux Cµ÷ÊÔÈëÃÅ

1.×Ô¶¨ÒåÊä³ö
  Ïë±Ø´ó¼Ò¶¼ÓÐÀûÓÃÊä³öº¯ÊýÈçprintfÀ´°ïÖúÎÒÃǵ÷ÊÔ³ÌÐòµÄ¾­Àú£¬ÕâÊÇÒ»ÖֱȽÏԭʼµÄ³ÌÐòµ÷ÊÔ¸¨Öú·½·¨£¬ÔÚLinuxÏÂÒ²¿ÉÒÔΪÎÒÃÇËùÓᣲ»¹ýÕâÖÖ·½·¨ÓÐÒ»¸öÃ÷ÏÔµÄȱµã£¬¾ÍÊÇÔÚµ÷ÊÔÍêºóÎÒÃDZØÐë×¢ÊÍ»òɾ³ýµôÕâЩ¸¨Öú´úÂë¡£Linux CÌṩÁË-DDEBUGÕâ¸ö±àÒë±ê¼ÇÀ´¶¨ÒåDEBUGÕâ¸ö·ûºÅ£¬½èÖúÓڸ÷ûºÅ£¬ÎÒÃÇ¿ÉÒÔÔÚÓ¦ÓóÌÐòÖÐÌí¼Ó¶îÍâ´úÂë²¢¸ù¾ÝÐèÒª¾ö¶¨Ö´ÐÐÓë·ñ¡£
  È磺
  #include<stdio.h>
  //*******dtest.c*******
  int main()
  {
    #ifdef DEBUG
      printf("Debug output......\n");
    #endif
    printf("Main function ended!\n";
  }
  ÔËÐУº
  $ cc -o dtest dtest.c
  $ ./dtest
  Main function ended!
  $ rm dtest
  $ cc -o dtest  -DDEBUG dtest.c
  $ ./dtest
   Debug output......
   Main function ended!
  ͨ¹ýÒÔÉÏʾÀý£¬ÄãÓ¦¸ÃÃ÷°×ÁË-DDEBUG±ê¼ÇµÄÓ÷¨ÁË°É£¬ºÇºÇ~~~Ò²ÐíÄã»áÏ룬Èç¹ûÎÒÓкü¸¶Îµ÷ÊÔ´úÂ룬¶øÎÒÏ£Íû¸ù¾ÝÐèҪÿ´ÎÑ¡ÔñÏàÓ¦µÄÒ»¶ÎÀ´ÔËÐУ¬ÕâÊÇ·ñÄÜʵÏÖÄØ£¿²»ÅÂ×ö²»µ½£¬¾ÍÅÂÏë²»µ½¡£ÊÂʵÉÏÎÒÃÇ¿ÉÒÔ·½±ãµÄʵÏÖÕâÖÖ¹¹Ï룬ÈçÏ£º
  #define BASIC_DEBUG 1
  #define EXTRA_DEBUG 2
  #define SUPER_DEBUG 4
  //code 1
  # if (DEBUG & BASIC_DEBUG £©
    printf¡£¡£¡£
  #endif
  //code 2
   # if (DEBUG & EXTRA_DEBUG £©
    printf¡£¡£¡£
  #endif
 
  //code 3
   # if (DEBUG & SUPER_DEBUG £©
    printf¡£¡£¡£
  #endif
  ÉÏÊö´úÂëÖÐÎÒÃÇ×Ô¶¨ÒåÁ˼¸¸öºê±äÁ¿£¬Í¨¹ý"&“À´¾ö¶¨´úÂë¶ÎµÄÖ´ÐÐÓë·ñ¡£ÎÒÃÇÖªµÀ”&“Ϊ°´Î»È¡ÓàÔËËã·û£¬ËùÒÔµ±DEBUGµÄֵΪ1ʱ£¬Ö»ÓÐcode 1»áÖ´ÐУ¬µ±DEBUGµÄֵΪ2ʱ£¬Ö»ÓÐcode 2»áÖ´ÐУ¬¶øµ±DEBUGµÄֵΪ3ʱ£¬code 1ºÍcode 2¶¼»áÖ´ÐУ¬ÒÀ´ÎÀàÍÆ¡£¡£¡£¿ÉÊÇÎÒÃÇÈçºÎ¸ù¾ÝÐèÒªÉèÖÃDEBUGµÄÖµÄØ£¿Õ⻹µÃ¿´-DDEBUG±ê¼Ç£¬ÔÚÃüÁîÌáʾ·ûÏÂÖ±½Ó¸ø-DDEBUG¸³Öµ¾ÍOKÁË£¬Èçcc -o dtest 
-DDEBUG=5  dtest.c
2 µ÷ÊÔ¹¤¾ß(gdb)
  Ç°Ãæ½éÉܵĵ÷ÊÔ·½·¨Ö»ÊÇÒ»ÖÖ°ïÖúÎÒÃǵ÷ÊԵĸ


Ïà¹ØÎĵµ£º

linux²»ÊÇ¡±Íæ¾ß¡°

     ×î½üÔÚ°ÚŪlinux,·¢ÏÖËüÕæµÄ²»ÊÊÓÃÀ´Í棬ÓÃÀ´°ì¹«»¹ÊÇ¿ÉÒÔ¡¢×ö¸ß¼¶Ó¦ÓÃÒ²¿ÉÒÔ£¡    
       ÏÖÔÚÄÇЩÉÏÍø±¾µÄϵͳºÜ¶àlinux°æ£¬µ«ÔÚÖйú¾ø´ó²¿·Ö¶¼»á±»¸Éµô»»³Éwindows£¬ÎªÊ²Ã´£¿µÀÀíºÜ¼òµ¥£¬¾ø´ó¶àÊýÕâÑùµÄÓû§¶ÔµçÄÔ¼¼Êõ¶¼²»Ì«Ê죬¶øÇÒ¶¼Ï ......

Linux 2.6Äں˵ÄÐÂËø»úÖÆ RCU

http://www.ibm.com/developerworks/cn/linux/l-rcu/
º¯ÊýÕªÒª£º
C´úÂë
/*¶ÁÕßÔÚ¶ÁÈ¡ÓÉRCU±£»¤µÄ¹²ÏíÊý¾ÝʱʹÓøú¯Êý±ê¼ÇËü½øÈë¶Á¶ËÁÙ½çÇø¡£*/ 
rcu_read_lock()  
/* 
¸Ãº¯ÊýÓërcu_read_lockÅä¶ÔʹÓã¬ÓÃÒÔ±ê¼Ç¶ÁÕßÍ˳ö¶Á¶ËÁÙ½çÇø¡£¼ÐÔÚÕâÁ½¸öº¯ÊýÖ®¼äµÄ´úÂëÇø³ÆΪ"¶Á¶ËÁÙ½çÇø" ......

£¨×ªÔØ£©£¨Ö¸Òý×Ô¼º£©Linuxѧϰ·ÉϵÄÌå»á£¨£©


[ת]Õâ¸öÌâÄ¿ºÜ´ó£¬¸øÈËÒ»ÖָоõÎÒºÃÏñºÜ³É¹¦£¬Æäʵ²»È»¡£Êµ¼ÊÉÏ×Ô¼ºË®Æ½²»¸ß£¬ÉõÖÁºÜµÍ£¬µ«ÊÇ×ö¹ýÁËһЩÇúÕÛµÄѧϰµÀ·£¬Í¬Ê±°Ñ×Ô¼ºÕæʵµÄѧϰÀú³Ì±í´ï³öÀ´£¬Ï£Íû¶ÔºóÀ´ÕßÓнè¼øµÄÒâÒ壬ÉõÐÒ£¡
¹¤×÷ÈýÄê¡¢¼¸³É·ÏÈË£¡
ÎÒ2000Äê±ÏÒµÓÚ»ªÖеØÇøµÄÒ»¸öÀí¹¤¿Æ´óѧ£¬×¨ÒµÊÇ»úеµç×Ó£¬ÎÒµ±Ê±ÒѾ­Ç©ÁËÒ»¼ÒÄÚ½ij¸öÊ¡¼¶»ú¹Ø¹¤× ......

Six BS HelloWorld from C World

#define _________ } 
#define ________ putchar
#define _______ main 
#define _(a) ________(a); 
#define ______ _______(){ 
#define __ ______ _(0x48)_(0x65)_(0x6C)_(0x6C) 
#define ___ _(0x6F)_(0x2C)_(0x20)_(0x77)_(0x6F) 
#define ____ _(0x72)_(0x6C)_(0x64)_(0 ......

C´úÂë»ìÏýÖ®ÂÃ

´ÓÌìÌÃ×ßÏòµØÓüµÄÁù²¿... 1
µÚÒ»²½¡¢°Ñfor±ä³Éwhile. 2
µÚ¶þ²½£¬°ÑÑ­»µ±ä³ÉµÝ¹é... 2
µÚÈý²½£¬ÅªÂÒ´úÂë½á¹¹/ʹÓÃûÓк¬ÒåµÄ±äÁ¿Ãû... 3
µÚËIJ½£¬È¡ÏûÁÙʱ±äÁ¿... 3
µÚÎå²½£¬¼ÌÐøŪÂÒ±äÁ¿Ãû... 4
µÚÁù²½£¬ÒƳý³£Á¿... 4
 
´ÓÌìÌÃ×ßÏòµØÓüµÄÁù²¿
¿ªÊ¼³ÌÐò
ÏÂÃæÊÇÒ»¸öÕÒ³öËØÊýµÄ³ÌÐò£º
 
²é¿´Ô´´úÂë´òÓ¡ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ