<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 嵌入式Linux網(wǎng)絡(luò )編程之:網(wǎng)絡(luò )基礎編程

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

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

本文引用地址:http://dyxdggzs.com/article/257116.htm

(3)使用實(shí)例。

該實(shí)例分為客戶(hù)端和服務(wù)器端兩部分,其中服務(wù)器端首先建立起socket,然后與本地端口進(jìn)行綁定,接著(zhù)就開(kāi)始接收從客戶(hù)端的連接請求并建立與它的連接,接下來(lái),接收客戶(hù)端發(fā)送的消息??蛻?hù)端則在建立socket之后調用connect()函數來(lái)建立連接。

服務(wù)端的代碼如下所示:

/*server.c*/

#includesys/types.h>

#includesys/socket.h>

#includestdio.h>

#includestdlib.h>

#includeerrno.h>

#includestring.h>

#includeunistd.h>

#includenetinet/in.h>

#definePORT4321

#defineBUFFER_SIZE1024

#defineMAX_QUE_CONN_NM5

intmain()

{

structsockaddr_inserver_sockaddr,client_sockaddr;

intsin_size,recvbytes;

intsockfd,client_fd;

charbuf[BUFFER_SIZE];

/*建立socket連接*/

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

{

perror(socket);

exit(1);

}

printf(Socketid=%dn,sockfd);

/*設置sockaddr_in結構體中相關(guān)參數*/

server_sockaddr.sin_family=AF_INET;

server_sockaddr.sin_port=htons(PORT);

server_sockaddr.sin_addr.s_addr=INADDR_ANY;

bzero((server_sockaddr.sin_zero),8);

inti=1;/*允許重復使用本地地址與套接字進(jìn)行綁定*/

setsockopt(sockfd,SOL_,SO_REUSEADDR,i,sizeof(i));

/*綁定函數bind()*/

if(bind(sockfd,(structsockaddr*)server_sockaddr,

sizeof(structsockaddr))==-1)

{

perror(bind);

exit(1);

}

printf(Bindsuccess!n);

/*調用listen()函數,創(chuàng )建未處理請求的隊列*/

if(listen(sockfd,MAX_QUE_CONN_NM)==-1)

{

perror(listen);

exit(1);

}

printf(Listening....n);

/*調用accept()函數,等待客戶(hù)端的連接*/

if((client_fd=accept(sockfd,

(structsockaddr*)client_sockaddr,sin_size))==-1)

{

perror(accept);

exit(1);

}

/*調用recv()函數接收客戶(hù)端的請求*/

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

if((recvbytes=recv(client_fd,buf,BUFFER_SIZE,0))==-1)

{

perror(recv);

exit(1);

}

printf(Receivedamessage:%sn,buf);

close(sockfd);

exit(0);

}

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

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




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>