freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

排隊(duì)叫號(hào)系統(tǒng)軟件設(shè)計(jì)畢業(yè)設(shè)計(jì)論文(編輯修改稿)

2025-07-23 18:54 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 導(dǎo)入對(duì)應(yīng)頭文件。define myperr(x) perror(x)。exit(0)注釋:預(yù)定義錯(cuò)誤判斷。void main(){ int sockfd, ret。 sockfd = socket(AF_INET, SOCK_STREAM, 0)。 if(sockfd == 1) { myperr(socket)。 } struct sockaddr_in servaddr。 memset(amp。servaddr, 0, sizeof(servaddr))。 = AF_INET。 = htons((short)4008)。注釋:IPV4地址結(jié)構(gòu),并轉(zhuǎn)換成16位網(wǎng)絡(luò)字節(jié)序 struct hostent* server。 server = gethostbyname()。 if(server == NULL) { herror(gethostbyname)。exit(0)。 } = *(uint32_t*)serverh_addr。 //inet_pton(AF_INET, , amp。)。 ret = connect(sockfd, (struct sockaddr*)amp。servaddr, sizeof(servaddr))。注釋:給出固定地址結(jié)構(gòu)參數(shù)。 if(ret == 1) { myperr(connect)。 } char buf[128]。 char buf_ret[1024]。注釋:定義傳遞數(shù)組。 int read_ret。 while(1) { //scanf(%s, buf)。 //write(sockfd, buf, strlen(buf))。 printf(****************\n)。 printf(按回車開始下一個(gè)\n)。 printf(****************\n)。注釋:客戶端給出提示界面。 getchar()。注釋:接收回車。 memset(buf_ret, 0, sizeof(buf_ret))。注釋:讀寫前,清空數(shù)組。 read_ret = read(sockfd, buf_ret, sizeof(buf_ret))。 printf(請(qǐng)%s,buf_ret)。 //write(1, buf_ret, read_ret)。 printf(號(hào),到服務(wù)窗口\n)。注釋:顯示對(duì)應(yīng)友好提示。 fflush(stdout)。注釋:釋放空間。 }} 服務(wù)器主要實(shí)現(xiàn)代碼include include include arpa///include include include sys/include sys/include include define myperr(x) perror(x)。exit(0)注釋:頭文件導(dǎo)入。int counter = 0。int first_person = 0。int vip_counter = 0。int vip_first_person = 0。int flg = 0。注釋:定義全局變量。void main(){ int sockfd,sel。 pid_t pid_s。 pid_s = fork()。注釋:創(chuàng)建子進(jìn)程。if(pid_s == 0) { while(1) { printf(\t\t\t\t***********************沈陽盛京醫(yī)院*************************\n)。 printf(\t\t\t\t\t\t\t請(qǐng)選擇所需服務(wù)\n)。 printf(\t\t\t\ \n)。 printf(\t\t\t\t***********************沈陽盛京醫(yī)院*************************\n)。注釋:完成界面顯示功能。 scanf(%d,amp。sel)。注釋:接收選擇選號(hào)。 if(sel 2) { //超級(jí)選項(xiàng) flg = 1。 getchar()。 vip_counter++。 printf(\n)。 printf(\n)。 printf(—————————————————\n)。 printf(|序號(hào)B%d 排隊(duì)人數(shù)%d|\n, vip_counter, vip_countervip_first_person1)。 printf(—————————————————\n)。 printf(\n)。 printf(\n)。 }注釋:vip數(shù)據(jù)處理過程。 else { getchar()。 counter++。 printf(\n)。 printf(\n)。 printf(—————————————————\n)。 printf(|序號(hào)A%d 排隊(duì)人數(shù)%d|\n, counter, counterfirst_person1)。 printf(—————————————————\n)。 printf(\n)。 printf(\n)。 }注釋:正常數(shù)據(jù)處理過程。 } } else if(pid_s 0) { int sockfd, nsock。 int ret。 struct sockaddr_in servaddr, cliaddr。 // struct hostent* hostall。 sockfd = socket(AF_INET, SOCK_STREAM, 0)。 if(sockfd == 1) { myperr(socket)。 } memset(amp。servaddr, 0, sizeof(servaddr))。 = AF_INET。 = htons((short)4008)。 // hostall = gethostbyname()。 = INADDR_ANY。 ret = bind(sockfd, (struct sockaddr*)amp。servaddr, sizeof(servaddr))。注釋:與客戶端構(gòu)架連接。 if(ret == 1) { myperr(bind)。 } ret = listen(sockfd, 100)。 if(ret == 1) { myperr(listen)。 } int len。 pthread_t tid。注釋:創(chuàng)建線程,以及實(shí)現(xiàn)要球功能。 //while(1) //{ len = sizeof(cliaddr)。 nsock = accept(sockfd, (struct sockaddr*)amp。cliaddr, amp。len)。 void* fun(void* arg)。 void* funB(void* arg)。 if(flg == 0) { pthread_create(amp。tid, NULL, fun, (void*)nsock)。 } else { pthread_create(amp。tid, NULL, funB, (void*)nsock)。 } //} }}注釋:現(xiàn)成實(shí)現(xiàn)函數(shù)實(shí)現(xiàn)。void* fun(void* arg){ int nsock = (int)arg。 char buf[128],num[64]。 int read_ret。 pid_t pid。 while(1) { memset(num, 0, sizeof(num))。 sprintf(num, A%d, first_person)。 write(nsock, num, strlen(num))。 first_person++。 }}void* funB(void* arg){ int nsock = (int)arg。 char buf[128],num[64]。 int read_ret。 pid_t pid。 //while(1) //
點(diǎn)擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1