linux socket通訊原始碼

2021-07-25 03:39:34 字數 1137 閱讀 4735

初學socket通訊,參考的是linuxc程式設計大全的23章的23-5例子,但是發現這個例子原始碼裡有好幾處錯誤,因為初學,很多不懂,吃了虧,因此將修改後能正常執行的**記錄在這裡 ,參考

server.c 

#include

#include

#include

#include

#include

#include

#include

#define max_len 100

void upper2lower(char *p)

for(;*p !='\0';p++)}}

int main (int argc ,char **argv)

if(close(listen_fd)==-1)

return 0;

}client.c

#include

#include

#include

#include

#include

#include

#include

#define max_len 100

int main (int argc ,char **argv)

bzero(&sin,sizeof(sin));

sin.sin_family = af_inet; // ipv4

inet_pton(af_inet,"127.0.0.1",&sin.sin_addr); //位址格式轉化,字串轉換成點分十進位制

sin.sin_port = htons(port); //主機位元組序轉換網路位元組序 

sfd = socket(af_inet,sock_stream,0);

if((connect(sfd,(struct sockaddr *)&sin,sizeof(sin)))<0)

printf("start send data =%s\n",send);

write(sfd,send,strlen(send)); /**傳送字串,包含字串結束符*/

read(sfd,buf,max_len);

printf("receive from server : %s\n",buf);

close(sfd);

return 0;

}

boost asio使用UDP協議通訊原始碼實現

說明 以下原始碼來自參考文獻 1 比原文更豐富,更有指導意義,方便日後參考.udp servr端原始碼 g g udp server.cpp o udp server lboost system include include include using namespace std using na...

linux socket程序通訊

socket程序通訊與網路通訊使用的是統一套介面,只是位址結構與某些引數不同。一。建立socket服務端的流程如下 1 建立socket,型別為af local或af unix,表示用於程序通訊 int server fd int client fd client file descriptor s...

linux使用共享記憶體實現程序間通訊原始碼

寫的部分 include include include include include intmain shmaddr shmat shmid,0,0 對映 printf shmat ok n strcpy shmaddr,liuzhihao 傳遞資料 sleep 5 睡5秒 shmdt shma...