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

linux socket±à³ÌÒ»°ãģʽ

1£ºËùÐèÍ·Îļþ£º<systypes.h>£¨Êý¾ÝÀàÐͶ¨Ò壩  < sys/socket.h>£¨Ìṩsocketº¯ÊýºÍÊý¾Ý½á¹¹£©
    <netinet/in.h>£¨¶¨ÒåÊý¾Ý½á¹¹sockaddr_in£© <netdb.h>£¨Ìṩ»ñÈ¡ÓòÃû»òIPµÄº¯Êý£© 
    <arpa/inet.h>£¨ÌṩIPµØÖ·×ª»»º¯Êý£©  <sys/select.h> (Ìṩselectº¯Êý¼¯Ïà¹ØÊý¾Ý½á¹¹µÄ)
2£º±àд¿Í»§¶Ë³ÌÐò
      int sock_fd, recvbytes;
¡¡ char buf[MAXDATASIZE];   //½ÓÊܵÄÊý¾Ý´æ·ÅµÄλÖÃ
¡¡ struct hostent *host;
¡¡  struct sockaddr_in serv_addr
     
      if((host=gethostbyname(argv[1]))==NULL)
     {
          herror("gethostbyname³ö´í£¡");
          exit(1);
     }
¡¡ if ((sock_fd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
    {
        perror("socket´´½¨³ö´í£¡");
        exit(1);
    }
   
serv_addr.sin_family=AF_INET;
¡¡ serv_addr.sin_port=htons(SERVPORT);
¡¡ serv_addr.sin_addr = *((struct in_addr *)host->h_addr);
¡¡ bzero(&(serv_addr.sin_zero),8);
¡¡ if (connect(sock_fd, (struct sockaddr *)&serv_addr, \
¡¡¡¡ sizeof(struct sockaddr)) == -1) {
         perror("connect³ö´í£¡");
         exit(1);
      }
¡¡ if ((recvbytes=recv(sock_fd, buf, MAXDATASIZE, 0)) ==-1) {
     perror("recv³ö´í£¡");
      exit(1);
     }
¡¡ buf[recvbytes] = '\0';
¡¡ printf("Received: %s",buf);
¡¡ close(sock_fd);
}
int sock_fd,client_fd;    /*sock_fd£º¼àÌýsocket£»client_fd£ºÊý¾Ý´«Êäsocket */
¡¡ struct sockaddr_in my_addr; /* ±¾»úµØÖ·ÐÅÏ¢ */
¡¡ struct sockaddr_in remote_addr; /*


Ïà¹ØÎĵµ£º

linux c socket ¿ª·¢Óë±àÒëʵÀý

ÕâÆªÈÕÖ¾»¹ÊÇÏÈ´ÓÒ»¸öÄܹ»ÔËÐÐÆðÀ´µÄÀý×Ó³ö·¢£¬Ò»µ©ÄÜ˳ÀûµÄ¿´µ½³ÌÐòµÄ³É¹¦ÔËÐУ¬ÄÇô½ÓÏÂÀ´µÄʼþÎÒÏëÓ¦¸ÃÊÇÎÊΪʲôÁË£¿ËƺõÕâÑù¸ü¼ÓÈÝÒ×Àí½âºÍÕÆÎÕ¡£
¶ÔÓÚsocket³ÌÐòµÄ¸ÅÄîÕâÀï¾Í²»¶àдÁË£¬µ«ÎÒÏàÐÅ£¬Èç¹ûÄÜ¿´ÍêÕâÕûƪÎÄÕ£¬ÎÒÏàÐŲ»»áÔÙÓÐÕâÑùµÄÒÉÎʵġ£
ÏÂÃæ½«±àдһ¸öc/s½á¹¹µÄ³ÌÐò£¬Ö÷Òª¹¦ÄÜÊÇclient½«Ïòserver·¢Ë ......

Linux×ÀÃæºÎ´¦È¥£¿






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
    µ±Ç°£¬Ò»¸öºÜÃ÷ÏÔµÄÊÂʵÊÇ£¬
Linux
×ÀÃæ²¢²»ÆÕ¼°¡£Ô­ÒòºÎÔÚ£¿

ÔÚ
XP
µÁ°æº£ÑóÖУ¬ÆÕ¼°
Linux
£¬Ì¸ºÎÈÝÒ×£¿Ê®¼¸ÄêÁË£¬Ëµ¾¡
XP
µÁ°æµÄ»µ»°Ò²ÎÞÓ㨲»ÁéÑ飩¡£
Linux
¹ú²ú»¯Ò²Ê§°ÜÁË¡£ÎÊÌ⾿¾¹ ......

linuxÄÚºËÖпªÍ·´øÓÐ asmlinkage µÄº¯Êý±íʾʲô

Ç¿ÖÆÍ¨¹ý¶ÑÕ»´«µÝ²ÎÊý£¬²»ÒªÓüĴæÆ÷´«µÝ
×Ðϸ¿´Ò»ÏÂÓÐasmlinkageµÄµØ·½Í¨³£ÊÇϵͳµ÷Óõĺ¯Êý£¬ÒòΪÔÚϵͳµ÷ÓÃÖУ¬¼Ä´æÆ÷´ÓÓû§¿Õ¼ä´«¹ýÀ´ºóSAVE_ALLѹÈë¶ÑÕ»£¬½Ó×ŵ÷ÓÃÏàÓ¦µÄϵͳµ÷Óú¯Êý£¬ÕâÑùϵͳµ÷Óú¯ÊýÒ»¶¨Òª±£Ö¤ÊÇͨ¹ý¶ÑÕ»´«µÝ²ÎÊýµÄ
תÌùÒ»¶Î£º
The asmlinkage tag is one other thing that we should observe a ......

linuxÉèÖû·¾³±äÁ¿(ת)


1¡¢ÒýÑÔ
    ÔÚlinuxϵͳÏ£¬Èç¹ûÄãÏÂÔØ²¢°²×°ÁËÓ¦ÓóÌÐò£¬ºÜÓпÉÄÜÔÚ¼üÈëËüµÄÃû³ÆÊ±³öÏÖ“command not found”µÄÌáʾÄÚÈÝ¡£Èç¹ûÿ´Î¶¼µ½°²×°Ä¿±êÎļþ¼ÐÄÚ£¬ÕÒµ½¿ÉÖ´ÐÐÎļþÀ´½øÐвÙ×÷¾ÍÌ«·±ËöÁË¡£ÕâÉæ¼°µ½»·¾³±äÁ¿PATHµÄÉèÖÃÎÊÌ⣬¶øPATHµÄÉèÖÃÒ²ÊÇÔÚlinux϶¨ÖÆ»·¾³±äÁ¿µÄÒ»¸ö×é³É²¿·Ö¡£±¾ÎÄ» ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ