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

正文內(nèi)容

嵌入式課程設(shè)計(jì)-資料下載頁

2025-06-17 16:11本頁面
  

【正文】 head。 //開始標(biāo)志為 設(shè)定為0x7E 1 int lenth。 //包的數(shù)據(jù)部分長(zhǎng)度 4 unsigned char flag。 //0 : cmd 1:data 1 unsigned char stop。 //0 stop 1:send 1 unsigned char num。 //標(biāo)明發(fā)送信息 1 unsigned char data[40]。 //數(shù)據(jù)部分 }Pro_package。/******接收數(shù)據(jù)結(jié)構(gòu)體******/typedef struct datatype { unsigned char number。 unsigned char age。 unsigned char high。 unsigned char weigh。 long time。 char *name。}Datatype。/*標(biāo)準(zhǔn)包*/Pro_package test_package={ .head = 0x7E, .lenth = 8, .flag = 0, .stop = 1,}。//globalint input_flag = 6。void input()。char printf_buffer[300]。void main(int argc, char** argv){ if(argc!=3) { printf(%s: dest ip address dest port\n, argv[0])。 return。 } //create socket int sockfd=1。 sockfd =socket(AF_INET,SOCK_STREAM,IPPROTO_TCP)。 if(sockfd0) { printf(socket create error\n)。 return。 } //connect struct sockaddr_in serverAddr。 memset(amp。serverAddr,0x0,sizeof(struct sockaddr_in))。 =AF_INET。 =htons(atoi(argv[2]))。 if(inet_pton(AF_INET,argv[1], amp。)=0) { printf(input wrong server addr\n)。 close(sockfd)。 return。 } while(1) //建立鏈接 { if(connect(sockfd, (struct sockaddr*)amp。serverAddr, sizeof(serverAddr))==0) { printf(connected\n)。 break。 } sleep(1)。 } //創(chuàng)建交互線程 pthread_t ipt_id。 if(pthread_create((pthread_t *)amp。ipt_id,NULL,(void*)amp。input,NULL)0) { printf(create input thread fail!\n)。 close(ipt_id)。 return。 } unsigned char send_buffer[8]。 unsigned char ucRcvBuf[60]。 int i,verify_flag。 Pro_package rcv_package。 Datatype rcv_data。 sleep(1)。 while(1) { //打開文本文件 FILE* file_fd。 file_fd = fopen(./,w+)。 if(file_fd == NULL) { printf(open file fail!\n)。 return。 } int count = fprintf(file_fd, %s, (char *)printf_buffer)。 . fclose(file_fd)。 //保存文件 sleep(1)。 //每次循環(huán)等待1秒 if(input_flag == 0) //停止 { sleep(1)。 printf(client stop recv!\n)。 break。 } if(input_flag 5) //非法輸入 { printf(input number false, please reinput!\n)。 sleep(2)。 continue。 } int package_lenth = 8。 send_buffer[0] = 。 memcpy(amp。send_buffer[1], amp。package_lenth, 4)。 //頭部為8個(gè)字節(jié) send_buffer[5] = 。 //控制信息 send_buffer[6] = 。 send_buffer[7] = (char)input_flag。 send(sockfd, send_buffer, 8, MSG_NOSIGNAL)。 /*打印發(fā)送的數(shù)據(jù)*/ /*int g。 printf(send data:\n)。 for(g=0。 g8。 g++) printf(%x , send_buffer[g])。 */ int nLen =recv(sockfd,ucRcvBuf,sizeof(ucRcvBuf),MSG_NOSIGNAL)。 //printf(len :%d\n, nLen)。 if(nLen 0) //接收失敗 { //disconnected printf(disconnected\n)。 close(sockfd)。 return。 } else if (nLen == 0) // continue。 else //接收成功 { /**/ //printf(2\n)。 for(i=0。 inLen。 i++) //尋找包頭 { if(ucRcvBuf[i] == 0x7E) { verify_flag = 1。 break。 } } if(verify_flag == 1) { /**組包**/ = ucRcvBuf[i]。 memcpy(amp。, amp。ucRcvBuf[i+1], 4)。 = ucRcvBuf[i+5]。 = ucRcvBuf[i+6]。 = ucRcvBuf[i+7]。 [0] = ucRcvBuf[i+8]。 //age [1] = ucRcvBuf[i+9]。 //number [2] = ucRcvBuf[i+10]。 //high [3] = ucRcvBuf[i+11]。 //weigh memcpy(amp。[4], amp。ucRcvBuf[i+12], 4)。 //printf(time ls %d ) //[8] =39。\039。 //加結(jié)束符 memcpy(amp。[8], amp。ucRcvBuf[i+16], )。 [] =39。\039。 //加結(jié)束符 //printf(name is %s \n, (char *)amp。[4])。 } if( == 1) { int offset = 0。 offset+=sprintf(printf_buffer+offset,name:%s\n,(char*)amp。[8])。 offset += sprintf(printf_buffer+offset, number: %d \n, [0])。 offset += sprintf(printf_buffer+offset, age: %d \n, [1])。 offset += sprintf(printf_buffer+offset,high: %d \n, [2])。 offset += sprintf(printf_buffer+offset,weigh: %d \n, [3])。 offset += sprintf(printf_buffer+offset, time: %ld \n, / (long)([4] | [5]8 | / [6]16 | [7]24))。 printf(imformation:\n\r%s, printf_buffer)。 } else { printf(It39。s not data package!\n)。 continue。 } i = 0。 verify_flag = 0。 = 0。 nLen = 0。 } memset(ucRcvBuf, 0, strlen(ucRcvBuf))。 memset(send_buffer, 0, strlen(send_buffer))。 memset(amp。rcv_package, 0, sizeof(rcv_package))。 memset(amp。rcv_data, 0, sizeof(rcv_data))。 } return。}/*等待用戶按鍵輸入線程*/void input(){ int cmd。 while(1) { scanf(%d, amp。input_flag)。 } }39
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1