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

正文內(nèi)容

管理系統(tǒng)中計(jì)算機(jī)應(yīng)用實(shí)踐報(bào)告(編輯修改稿)

2024-08-30 06:37 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 break。 } else //正確接收到網(wǎng)絡(luò)信息 printf(收到 %d 字節(jié)信息:%s \n, retval, Buffer)。 //程序的一個(gè)退出條件 if(!stricmp(Buffer, quit)) break。 } //關(guān)閉套接字 closesocket(conn_socket)。 WSACleanup()。 return 0。}/*******************************************************\* 簡(jiǎn)單 TCP/UDP 套接字服務(wù)器程序 windows環(huán)境 *\*******************************************************/include //套接字頭文件include include include include pragma ment(lib,ws2_32)//添加庫(kù)int main(void){ unsigned short port= 5001。 //端口號(hào) int socket_type = SOCK_DGRAM。 //缺省使用TCP連接 char Buffer[1024]。 //收發(fā)緩沖區(qū) int retval, fromlen, i, isconnected = 0。 //臨時(shí)變量 struct sockaddr_in local, from。 //套接字地址結(jié)構(gòu)變量 SOCKET listen_socket, msgsock。 //套接字變量 WSADATA wsaData。 //windows套接字信息 //先輸入服務(wù)器程序所需要的基本信息:端口號(hào),套接字類型 printf(請(qǐng)輸入端口號(hào)( 5000 ):)。 scanf(%d, amp。i)。 if(i 5000 || i 65535) printf(不正確的端口號(hào)%d,用缺省端口號(hào)5001\n,i)。 else port = i。 printf(請(qǐng)輸入套接字類型( 1,TCP。 2, UDP ):)。 scanf(%d, amp。i)。 if(i == 1) socket_type = SOCK_STREAM。 else if(i == 2) socket_type = SOCK_DGRAM。 else printf(不正確的輸入%d,使用TCP數(shù)據(jù)流\n,i)。 //在windows環(huán)境下,需要先初始化協(xié)議棧 if ((retval = WSAStartup(0x202, amp。wsaData)) != 0) //初始化套接字版本等信息 { printf(WSAStartup 失敗,錯(cuò)誤號(hào):%d\n, retval)。 WSACleanup()。//在創(chuàng)建失敗,或者程序結(jié)束,都要調(diào)用 return 1。 } //建立套接字 listen_socket = socket(AF_INET, socket_type, 0)。 if (listen_socket == INVALID_SOCKET) { printf(socket()失敗,錯(cuò)誤號(hào):%d\n, WSAGetLastError())。 WSACleanup()。 return 1。 } // 拷貝 解析的信息到sockaddr_in結(jié)構(gòu)中 = AF_INET。 = INADDR_ANY。 = htons(port)。 //邦定網(wǎng)絡(luò)地址到套接字 if (bind(listen_socket,(struct sockaddr*)amp。local, sizeof(local) ) == SOCKET_ERROR) //綁定網(wǎng)絡(luò)地址 { printf(bind()失敗,錯(cuò)誤號(hào):%d\n, WSAGetLastError())。 WSACleanup()。 return 1。 } //對(duì)于流式套接字,讓套接字處于監(jiān)聽狀態(tài),等待連接到來(lái) if (socket_type != SOCK_DGRAM) { if (listen(listen_socket,5) == SOCKET_ERROR) //監(jiān)聽網(wǎng)絡(luò) { printf(listen()失敗,錯(cuò)誤號(hào):%d\n, WSAGetLastError())。 WSACleanup()。 return 1。 } } printf(監(jiān)聽端口:%d, 使用協(xié)議:%s\n, port, (socket_type == SOCK_STREAM)? TCP: UDP)。 while(1) { fromlen =sizeof(from)。 if (socket_type == SOCK_DGRAM ) msgsock = listen_socket。 else if( isconnected == 0) {//對(duì)于TCP連接,如果沒(méi)有連接,等待一個(gè)連接的到來(lái) msgsock = accept(listen_socket,(struct sockaddr*)amp。from, amp。fromlen)。 if (msgsock == INVALID_SOCKET) { printf(accept()失敗,錯(cuò)誤號(hào):%d\n,WSAGetLastError())。 WSACleanup()。 return 1。 } isconnected = 1。 printf(從%s收到連接, 端口是:%d\n, inet_ntoa(), htons())。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1