LINUX CÖÐÓÃdefine¶¨Òå¿É±ä²ÎÊýµÄºê
Ò»°ãÔÚµ÷ÊÔ´òÓ¡DebugÐÅÏ¢µÄʱºò, ÐèÒª¿É±ä²ÎÊýµÄºê. ´ÓC99¿ªÊ¼¿ÉÒÔʹ±àÒëÆ÷±ê×¼Ö§³Ö¿É±ä²ÎÊýºê(variadic macros), ÁíÍâGCCÒ²Ö§³Ö¿É±ä²ÎÊýºê, µ«ÊÇÁ½ÖÖÔÚϸ½ÚÉÏ¿ÉÄÜ´æÔÚÇø±ð.
1. __VA_ARGS__
__VA_ARGS__ ½« "..." ´«µÝ¸øºê . Èç
#define debug(format, ...) fprintf(stderr, format, __VA_ARGS__)
2. GCCµÄ¸´ÔÓºê
GCCʹÓÃÒ»ÖÖ²»Í¬µÄÓï·¨,´Ó¶ø¿ÉÒÔ¸ø¿É±ä²ÎÊýÒ»¸öÃû×Ö,ÈçͬÆäËü²ÎÊýÒ»Ñù.
#define debug(format, args...) fprintf (stderr, format, args)
ÕâºÍµÚÒ»ÌõµÄºêÀý×ÓÊÇÍêÈ«Ò»ÑùµÄ,µ«ÊÇÕâôд¿É¶ÁÐÔ¸üÇ¿²¢ÇÒ¸üÈÝÒ×½øÐÐÃèÊö.
3. ##__VA_ARGS__
ÉÏÃæÁ½¸ö¶¨ÒåµÄºê,Èç¹û³öÏÖ debug("A Message")µÄʱºò,ÓÉÓÚºêÕ¹¿ªºóÓиö¶àÓàµÄ¶ººÅ,ËùÒÔ½«µ¼Ö±àÒë´íÎó.
ΪÁ˽â¾öÕâ¸öÎÊÌâ,CPP ʹÓÃÒ»¸öÌØÊâµÄ"##"²Ù×÷,¸ñʽÈçÏÂ:
#define debug(format, ...) fprintf (stderr, format, ## __VA_ARGS__)
ÕâÀï,Èç¹û¿É±ä²ÎÊý±»ºöÂÔ»òΪ¿Õ,"##"²Ù×÷½«Ê¹Ô¤´¦ÀíÆ÷(preprocessor)È¥³ýµôËüÇ°ÃæµÄÄǸö¶ººÅ.
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
µãÆÀ£º°²×°Èí¼þ°ü rpm -i °üÈ«Ãû ɾ³ý rpm -e name(²»ÊÇ°üÃû) ²ÎÊý -ivh »ñµÃÒ»¸öÏêϸµÄ°²×°½ø³Ì --nodeps ºöÂÔÒÀÀµ¹Øϵ --force Ç¿ÖÆ°²×° -U °üÃû:Éý¼¶°²×° -F ¸üв»¹ÜÊÇʲôֱ½Ó¸²¸Ç --replacepkgsÕâÑù RPM ½«ºöÂԸôíÎóÐÅÏ¢ -vih --repla
ÄÚÈÝÀ´×Ô: ½Å±¾Ö®¼Ò www.jb51.net
°²×°Èí¼þ°ü
rpm -i °üÈ ......
/*
kmalloc can apply 128KB memory only. This func support any continous memory allocate more than 2MB.
*/
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kallsyms.h>
#define KMEM_PAGES &nb ......
--ÕâÀïËùÓеÄperl¼¼ÊõÎÊÌⶼÊÇÎÒƽ³£´¦ÀíÊý¾ÝµÄʱºòÒªÓõ½µÄ£¬¿ÉÄܲ»ÊǺÜÇ¿µÄ³ÌÐò£¬µ«ÊÇÏ£ÍûÄܺÍÈÈ°®perlµÄͬ־£¬Ò»Æð·ÖÏí...
ÔںܶàÇé¿öÏ£¬ÎÒÃÇÐèÒª´ÓÔ¶´¦·þÎñÆ÷ÉÏÏÂÔص±Ìì»òÕß×òÌìÉú³ÉµÄÈÕÖ¾Îļþ£¬À´²é¿´Ò»Ð©ÎÒÃÇÐèÒªµÄ¶«Î÷»òÕß±¸·Ý¡£
Èç¹û²ÉÓÃÁËftp£¬ÄÇôÎÒÃÇ ......