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

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",({
         &


Ïà¹ØÎĵµ£º

LinuxÐéÄâ»úÎÞ·¨ÁªÍøµÄÖÕ¼«½â¾ö°ì·¨

ÓÐʱÓöµ½ÈçÏÂÎÊÌâ£¬Íø¿¨ÉÏÓиö²æ£¬ÈκÎÃüÁî¶¼ÎÞ·¨ÐÞ¸´¡£
·¢ÏÖÍø¿¨ºì²æÖ®Ç°ÊÔ¹ýÏÂÃæÃüÁ¿Ï¶¨¶¼²»Ðеġ£
sudo ifconfig eth0 down
sudo ifconfig eth0 up
sudo /etc/init.d/dhcp3-server restart
sudo /etc/init.d/networking restart
ÎÊÌâ½â¾öºÜ¼òµ¥£¬°ÑÈçϵĸ´Ñ¡¿ò¹´Éϼ´¿É£¬ÐéÄâ»ú¿ª» ......

¼¸¸öLinuxʵÓóÌÐò

1. useradd Óû§Ãû
useraddÃüÁÔðÌí¼ÓÓû§µ½Linuxϵͳ£¨Ö»ÓйÜÀíÔ±¿ÉÒÔʹÓÃÕâ¸öÃüÁ¡£
Àý£º
useradd tom
2.userdel Óû§Ãû
userdelÃüÁîɾ³ýÒ»¸öÓû§ÕË»§£¨Ö»ÓйÜÀíÔ±¿ÉÒÔʹÓÃÕâ¸öÃüÁ¡£
Àý£º
userdel tom
3.passwd Óû§Ãû
µ±´´½¨Ò»¸öÓû§Ö®ºóÐèҪΪÓû§ÉèÖÃÃÜÂ룬passwd ¿ÉÒÔÍê³É´Ë¹¦ÄÜ¡£µ±passwdºóÃæÃ»ÓвΠ......

linuxÆô¶¯¹ý³ÌÏê½â

Ëæ×ÅLinuxµÄÓ¦ÓÃÈÕÒæ¹ã·º£¬ÌرðÊÇÔÚÍøÂçÓ¦Ó÷½Ã棬ÓдóÁ¿µÄÍøÂç·þÎñÆ÷ʹÓÃLinux²Ù×÷ϵͳ¡£ÓÉÓÚLinuxµÄ×ÀÃæÓ¦ÓúÍWindowsÏà±È»¹ÓÐÒ»¶¨µÄ²î¾à£¬ËùÒÔÔÚÆóÒµÓ¦ÓÃÖÐÍùÍùÊÇLinuxºÍWindows²Ù×÷ϵͳ¹²´æÐγÉÒì¹¹ÍøÂç¡£ÔÚ·þÎñÆ÷¶Ë´ó¶àʹÓÃLinuxºÍUnixµÄ£¬Ä¿Ç°LinuxµÄÉó¤Ó¦ÓÃÁìÓòÊǵ¥Ò»Ó¦ÓõĻù´¡·þÎñÆ÷Ó¦Óã¬Æ©ÈçDNSºÍDHCP·þÎñÆ÷¡¢W ......

ÔÚlinuxÏ »ñÈ¡£¬ÐÞ¸Ä×ÓÍøÑÚÂëNETMASKµÄÁ½¸öº¯Êý

//»ñÈ¡×ÓÍøÑÚÂëµÄº¯ÊýQString GetLocalNetMask()
{
int sock_netmask;
char netmask_addr[50];
struct ifreq ifr_mask;
struct sockaddr_in *net_mask;

sock_netmask = socket( AF_INET, SOCK_STREAM, 0 );
if( sock_netmask == -1)
{
perror("create socket failture...GetLocalNetMask\n");
......

ÓÖÒ»´Î±»linuxµÄ¹¤¾ßÕð¾ªÁË

    ǰһƪ²©¿Í»¹Ð´ÁË×Ô¼ºÐ´µÄ¶Ë¿Úת·¢¹¤¾ß£¬½ñÌìżȻÔÚÍøÉÏ¿´µ½½²ÃüÃû¹ÜµÀºÍnetcatÅäºÏµÄÓ÷¨£¬±»³¹µ×À×µ¹ÁË¡£
    Ô­À´ÒÔΪnetcat×ö²»µ½£¬Ô­À´ÊÇ×Ô¼ºÏë²»µ½£¬¶ø²»ÊÇnetcat×ö²»µ½……
    ·½·¨ÈçÏ£º
    $ mknod backpipe p
  &n ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ