LINUXÄÚºËÖÐminºÍmaxºêµÄѧϰ
add linux kernel min, max define:
include/linux/kernel.h
/*
* min()/max() macros that also do
* strict type-checking.. See the
* "unnecessary" pointer comparison.
*/
#define min(x,y) \
(__extension__\
({ \
typeof(x) _x = (x); \
typeof(y) _y = (y); \
(void) (&_x == &_y); \
_x < _y ? _x : _y; }) \
)
#define max(x,y) \
(__extension__\
({ \
typeof(x) _x = (x); \
typeof(y) _y = (y); \
(void) (&_x == &_y); \
_x > _y ? _x : _y; }) \
)
ÈçÉÏÊÇinclude/linux/kernel.hÖйØÓÚminºÍmaxÁ½¸öºÜ³£ÓõĺêµÄ¶¨Ò壬ÔÚÆäÖÐÎÒÃÇ¿ÉÒÔ¿´µ½ÒÔϼ¸¸ö¹Ø¼üµã£º
1. ΪºÎ²»Óøü¼òµ¥µÄ(x>y)?x:y ÕâÑùµÄ·½Ê½À´¶¨Ò壬¶øÒªÖØÐ¸³ÖµÒ»´Î¡£
2. ΪºÎÒªÓÃ({ })ÕâÑùµÄ½á¹¹°üΧ´úÂë¿é
3. ÄǸö__extension__ÊÇʲô¶«¶«£¿ £¨Óеİ汾ûÓÐÕâ¸ö__extension__)
4. (void)(&_x == &_y)ÓÐʲôÓ㬲»ÊÇÍÑÁË¿ã×Ó·ÅÆ¨Ã´
½â´ð£º
1. Èç¹ûÓû§Ê¹ÓÃÁËmin(x++,y++)»áÓÐÔõÑùµÄ½á¹û£¿
ËùÒÔ×îºÃµÄ°ì·¨ÊDZÜÃâÔÚºêµÄʵÌåÀïÈòÎÊý³öÏÖÒ»´ÎÒÔÉÏ¡£ÀϵÄlinuxÓõÄÊÇ x>?y£¬Õâ¸ö>?²Ù×÷·ûÊÇ·µ»ØxºÍyÖнϴóµÄÒ»¸ö£¬²»¹ýGCCµÄÎĵµÀïÒѾ¾ö¶¨ÅׯúÕâÖÖÀϵÄÓ÷¨ÁË¡£
2. GCCµÄÀ©Õ¹ÀïÏñ{ }ÕâÖֽṹҲÊÇ¿ÉÒÔÓÐÖµµÄ£¬ÆäÖµ¾ÍÊÇÆäÖÐ×îºóÒ»¸öÓï¾äµÄÖµ£¨°üÀ¨×óÖµ£©£¬ÕâÀïÍâÃæÔÙ¼Ó¸öÀ¨ºÅÊÇΪÁ˱£ÏÕ£¬±ÈÈ磺
printf("²Â²Â»áÏÔʾʲô£¿\n´ð°¸ÊÇ:%d\n",({
&
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
¾Ý¹úÍâýÌ屨µÀ£¬½üÈÕ£¬×ÊÑ¶ÍøÕ¾TechradarÁоÙÁ˽üÊ®ÄêÀ´LinuxϵͳÑݱäÀú³ÌÖеÄÖØÒªÊ±¿Ì£¬ÏÂÃæÈÃÎÒÃÇÀ´ä¯ÀÀÕâ15¸ö¾ßÓÐÀï³Ì±®ÒâÒåµÄ¸Ä½ø£º
1¡¢2001Äê1Ô£ºLinux Kernel 2.4
Linux 2.4°æÊÇÒ»¸öÖØÒªµÄ·ÖË®Á룬¸Ã°æ±¾ÏµÍ³ÌṩÁËÐí¶àÖØÒªµÄ½Ó¿Ú£¬ÖîÈçUSBÆô¶¯¡¢À¶ÑÀÖÕ¶ËÉ豸¡¢ÄÚǶRAIDºÍext3¸ñʽµÄÎļþϵͳ¡£Linux³öÉ«µÄÇý¶¯³ÌÐ ......
//»ñÈ¡±¾»úIPµØÖ·º¯Êý
QString GetLocalIp()
{
int sock_get_ip;
char ipaddr[50];
struct sockaddr_in *sin;
struct ifreq ifr_ip;
if ((sock_get_ip=socket(AF_INET, SOCK_STREAM, 0)) == -1)
{
printf("socket create failse...GetLocalIp!\n");
return ""; ......
µ±ÎÒÃǵijÌÐò±ÀÀ£Ê±£¬ÄÚºËÓпÉÄܰѸóÌÐòµ±Ç°ÄÚ´æÓ³Éäµ½coreÎļþÀ·½±ã³ÌÐòÔ±ÕÒµ½³ÌÐò³öÏÖÎÊÌâµÄµØ·½¡£×î³£³öÏֵ쬼¸ºõËùÓÐC³ÌÐòÔ±¶¼³öÏÖ¹ýµÄ´íÎó¾ÍÊÇ“¶Î´íÎó”ÁË¡£Ò²ÊÇ×îÄѲé³öÎÊÌâÔÒòµÄÒ»¸ö´íÎó¡£ÏÂÃæÎÒÃǾÍÕë¶Ô“¶Î´íÎó”À´·ÖÎöcoreÎļþµÄ²úÉú¡¢ÒÔ¼°ÎÒÃÇÈçºÎÀûÓÃcoreÎļþÕÒµ½³öÏÖ±ÀÀ£µÄµØ·½¡ ......
ǰһƪ²©¿Í»¹Ð´ÁË×Ô¼ºÐ´µÄ¶Ë¿Úת·¢¹¤¾ß£¬½ñÌìżȻÔÚÍøÉÏ¿´µ½½²ÃüÃû¹ÜµÀºÍnetcatÅäºÏµÄÓ÷¨£¬±»³¹µ×À×µ¹ÁË¡£
ÔÀ´ÒÔΪnetcat×ö²»µ½£¬ÔÀ´ÊÇ×Ô¼ºÏë²»µ½£¬¶ø²»ÊÇnetcat×ö²»µ½……
·½·¨ÈçÏ£º
$ mknod backpipe p
&n ......