<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式Linux網(wǎng)絡(luò)編程之:網(wǎng)絡(luò)基礎(chǔ)編程

          嵌入式Linux網(wǎng)絡(luò)編程之:網(wǎng)絡(luò)基礎(chǔ)編程

          作者: 時(shí)間:2013-09-13 來(lái)源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/257116.htm

          客戶端的代碼如下所示:

          /*client.c*/

          #includestdio.h>

          #includestdlib.h>

          #includeerrno.h>

          #includestring.h>

          #includenetdb.h>

          #includesys/types.h>

          #includenetinet/in.h>

          #includesys/socket.h>

          #definePORT4321

          #defineBUFFER_SIZE1024

          intmain(intargc,char*argv[])

          {

          intsockfd,sendbytes;

          charbuf[BUFFER_SIZE];

          structhostent*host;

          structsockaddr_inserv_addr;

          if(argc3)

          {

          fprintf(stderr,USAGE:./clientHostname(oripaddress)Textn);

          exit(1);

          }

          /*地址解析函數(shù)*/

          if((host=gethostbyname(argv[1]))==NULL)

          {

          perror(gethostbyname);

          exit(1);

          }

          memset(buf,0,sizeof(buf));

          sprintf(buf,%s,argv[2]);

          /*創(chuàng)建socket*/

          if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)

          {

          perror(socket);

          exit(1);

          }

          /*設(shè)置sockaddr_in結(jié)構(gòu)體中相關(guān)參數(shù)*/

          serv_addr.sin_family=AF_INET;

          serv_addr.sin_port=htons(PORT);

          serv_addr.sin_addr=*((structin_addr*)host->h_addr);

          bzero((serv_addr.sin_zero),8);

          /*調(diào)用connect函數(shù)主動(dòng)發(fā)起對(duì)服務(wù)器端的連接*/

          if(connect(sockfd,(structsockaddr*)serv_addr,

          sizeof(structsockaddr))==-1)

          {

          perror(connect);

          exit(1);

          }

          /*發(fā)送消息給服務(wù)器端*/

          if((sendbytes=send(sockfd,buf,strlen(buf),0))==-1)

          {

          perror(send);

          exit(1);

          }

          close(sockfd);

          exit(0);

          }

          在運(yùn)行時(shí)需要先啟動(dòng)服務(wù)器端,再啟動(dòng)客戶端。這里可以把服務(wù)器端下載到開(kāi)發(fā)板上,客戶端在宿主機(jī)上運(yùn)行,然后配置雙方的IP地址,在確保雙方可以通信(如使用ping命令驗(yàn)證)的情況下運(yùn)行該程序即可。

          $./server

          Socketid=3

          Bindsuccess!

          Listening....

          Receivedamessage:Hello,Server!

          $./clientlocalhost(或者輸入IP地址)Hello,Server!

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux相關(guān)文章:linux教程



          上一頁(yè) 1 2 3 4 5 6 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();