![socket函數(shù)手冊范本_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/3/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba1.gif)
![socket函數(shù)手冊范本_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/3/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba2.gif)
![socket函數(shù)手冊范本_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/3/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba3.gif)
![socket函數(shù)手冊范本_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/3/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba4.gif)
![socket函數(shù)手冊范本_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/3/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba/8f8e4609-edc5-46bd-9ed3-8626e0cd00ba5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、socket 函數(shù)手冊字節(jié)序函數(shù)#include /*主機(jī)序轉(zhuǎn)換為網(wǎng)絡(luò)序(short類型)*/uint16_t htons (uint16_t host16bitvalue);/*主機(jī)序轉(zhuǎn)換為網(wǎng)絡(luò)序(long類型)*/uint32_t htonl (uint32_t host32bitvalue);/*網(wǎng)絡(luò)序轉(zhuǎn)換為主機(jī)序(short類型)*/uint16_t ntohs (uint16_t net16bitvalue);/*網(wǎng)絡(luò)序轉(zhuǎn)換為主機(jī)序(long類型)*/uint32_t ntohl (uint32_t net32bitvalue);字節(jié)操縱函數(shù)#include /*清零*/void b
2、zero (void *dest, size_t nbytes );/*拷貝*/void bcopy (const void *src, void *dest, size_t nbytes );/*比較*/int bcmp (const void *ptr1 , const void *ptr2 , size_t nbytes );IPv4 地址轉(zhuǎn)換函數(shù)#include /*字符串(x.x.x.x)轉(zhuǎn)為32位網(wǎng)絡(luò)序數(shù)值*返回:成功-1 ,失敗-0*/ int inet_aton (const char *strptr , struct in_addr *addrptr );/*字符串(x.x.
3、x.x)轉(zhuǎn)為32位網(wǎng)絡(luò)序數(shù)值*返回:成功-32 位網(wǎng)絡(luò)序數(shù)值,失敗-INADDR_NONE(0xffffffff)*注意:255.255.255.255地址無法轉(zhuǎn)換,不推薦使用*/in_addr_t inet_addr (const char *strptr );/* 32位網(wǎng)絡(luò)序數(shù)值轉(zhuǎn)為字符串(x.x.x.x)*返回:字符串(x.x.x.x)*注意:返回的字符串保存在靜態(tài)存中,此函數(shù)不可重入*/char* inet_ntoa (struct in_addr inaddr );IPv4、IPv6 通用地址轉(zhuǎn)換函數(shù)#include /*地址字符串轉(zhuǎn)為數(shù)值* 參數(shù):family - AF_INET
4、; AF_INET6, addrptr - sockaddr_in結(jié)構(gòu)體的 sin_addr 的地址或sockaddr_in6 結(jié)構(gòu)體的sin6_addr的地址*返回:成功-1,失敗-1 ,輸入不是有效的地址-0*/int inet_pton (int family , const char *strptr , void *addrptr );/*數(shù)值轉(zhuǎn)為地址字符串* 參數(shù):family - AF_INET 或 AF_INET6, addrptr - sockaddr_in 結(jié)構(gòu)體的 sin_addr 的地址或 sockaddr_in6 結(jié)構(gòu)體的sin6_addr的地址strptr -保存轉(zhuǎn)換
5、后的地址字符串,指針不能為空,并 不小于len指定的長度len - 字符串長度, 中定義 INET_ADDRSTRLEN(峙INET6_ADDRSTRLEN(48)*返回:成功-返回strptr ,失敗-NULL*/const char* inet_ntop (int family , const void *addrptr , char *strptr , size_t len );TCP套接口函數(shù)#include /* *創(chuàng)建socket套接口,指定套接口協(xié)議類型*參數(shù):family - AF_UNIX(Unix 域),AF_LOCOL(Unix 域 的 POSIX 名 稱),AF_INE
6、T(IPv4),AF_INET6(IPv6),AF_ROUTE(路由套接口),AF_KEY(密 鑰套接口),AF_PACKETtype - SOCK_STREA糕節(jié)流),SOCK_DGRAM(據(jù)報(bào)),SOCK_RA傲始 IPv4、 IPv6),SOCK_PACKET(LINUXt類似 BPF(BSS組過濾器,Berkeley 核,如 FreeBSD劑DLPI(數(shù)據(jù)鏈路提供者接口, SVR4R,如soloris)的直接訪問 底層數(shù)據(jù)鏈路的套接口類型),SOCK_RDh靠傳遞消息),SOCK_SEQPACKET序分組)protocol - 0為給定family和type組合的系統(tǒng)默認(rèn)值返回:成功-
7、套接口描述字,失敗-1*/int socket (int family , int type , int protocol );/* TC哈戶端與TCPK務(wù)器建立連接,調(diào)用此函數(shù)會(huì)觸發(fā)TCP的三次握手, 并建立連接。調(diào)用此函數(shù)前,不必調(diào)用 bind函數(shù),核會(huì)決定源IP并選擇 一個(gè)臨時(shí)端口作為源端口。*參數(shù):sockfd - 套接口描述字servaddr - 包含要連接的服務(wù)器的IP和端口號(hào)的套接口地址結(jié)構(gòu)addrlen - servaddr套接口地址結(jié)構(gòu)體的大小返回:成功-0,失敗-1*/int connect (int sockfd, const struct sockaddr * serv
8、addr , socklen_t addrlen );/*將一個(gè)本地協(xié)議地址賦給套接口參數(shù):sockfd - 套接口描述字myaddr -綁定的本地協(xié)議地址,對于網(wǎng)際協(xié)議,即IP地址和端口,如果 IP地址賦值為INADDR_ANY5配地址wildcard),則由核去選擇IP地址, 如果端口賦值為0,則由核選擇一個(gè)臨時(shí)端口addrlen - 地址結(jié)構(gòu)體的大小返回:成功-0,失敗-1*/int bind (int sockfd , const struct sockaddr *myaddr, socklen_t addrlen );/*指示核接受一個(gè)未連接的套接口上的連接請求*參數(shù):sockfd
9、- 套接口描述字backlog -套接口兩個(gè)隊(duì)列(完成連接和未完成連接)的排隊(duì)最接個(gè)數(shù),各個(gè)操作系統(tǒng)有不同的根據(jù) backlog計(jì)算排隊(duì)最接個(gè)數(shù)的算法返回:成功-0 ,失敗-1*/int listen (int sockfd , int backlog );/* *從已完成連接隊(duì)列對頭返回一個(gè)已完成連接,如果已完成連接隊(duì)列為空,那么進(jìn)程被阻塞(假設(shè)套接口為缺省的阻塞方式)*參數(shù):sockfd - 監(jiān)聽套接口描述字cliaddr -輸出參數(shù),返回已連接的客戶端的協(xié)議地址,為 NULL則不返回addrlen -輸出參數(shù),返回套接口地址結(jié)構(gòu)體的大小,為 NULL則不 返回返回:成功-已連接套接口描述
10、字(由核自動(dòng)生成的一個(gè)新描述字,代表與所返回客戶端的TCP連接)失敗-1 , EINTER -收到中斷 */int accept (int sockfd , struct sockaddr * cliaddr , socklen_t*addrlen );#include /*關(guān)閉套接口,并終止TCP連接,如果為并發(fā)服務(wù)器父進(jìn)程關(guān)閉已連接套接口,會(huì)將相應(yīng)描述字的引用計(jì)數(shù)減一,如果計(jì)數(shù)不為0,將不會(huì)發(fā)送FIN參數(shù):sockfd - 套接口描述字*/int send( SOCKETS, const char FAR *buf , int len , int flags );不論是客戶還是服務(wù)器應(yīng)用程
11、序都用 send函數(shù)來向TCP連接的另一端發(fā)送 數(shù)據(jù)。客戶程序一般用send函數(shù)向服務(wù)器發(fā)送請求,而服務(wù)器則通常用send函數(shù) 來向客戶程序發(fā)送應(yīng)答。該函數(shù)的第一個(gè)參數(shù)指定發(fā)送端套接字描述符;第二個(gè)參數(shù)指明一個(gè)存放應(yīng)用程序要發(fā)送數(shù)據(jù)的緩沖區(qū);第三個(gè)參數(shù)指明實(shí)際要發(fā)送的數(shù)據(jù)的字節(jié)數(shù);第四個(gè)參數(shù)一般置00這里只描述同步Socket的send函數(shù)的執(zhí)行流程。當(dāng)調(diào)用該函數(shù)時(shí),send 先比較待發(fā)送數(shù)據(jù)的長度len和套接字s的發(fā)送緩沖的 長度,如果len大 于s的發(fā)送緩沖區(qū)的長度,該函數(shù)返回SOCKET_ERROR果len小于或者等于s的發(fā)送緩沖區(qū)的長度,那么send先檢查協(xié)議是否正在發(fā)送s的發(fā)送 緩沖
12、中的數(shù)據(jù),如果是就等待協(xié)議把數(shù)據(jù)發(fā)送完,如果協(xié)議還沒有開始發(fā)送 s的發(fā)送緩沖中的數(shù)據(jù)或者s的發(fā)送緩沖中沒有數(shù)據(jù),那么 send就比較s 的發(fā)送緩沖區(qū)的剩余空間和len ,如果len大于剩余空間大小send就一直 等待協(xié)議把s的發(fā)送緩沖中的數(shù)據(jù)發(fā)送完,如果len小于剩余空間大小send 就僅僅把buf中的數(shù)據(jù)copy到剩余空間里(注意并不是send把s的發(fā)送緩 沖中的數(shù)據(jù)傳到連接的另一端的,而是協(xié)議傳的,send僅僅是把buf中的 返回:成功-0 ,失敗-1數(shù)據(jù)copy到s的發(fā)送緩沖區(qū)的剩余空間里)。如果 send函數(shù)copy數(shù)據(jù)成 功,就返回實(shí)際copy的字節(jié)數(shù),如果send在copy數(shù)據(jù)時(shí)出
13、現(xiàn)錯(cuò)誤,那么 send就返回SOCKET_ERRORI send在等待協(xié)議傳送數(shù)據(jù)時(shí)網(wǎng)絡(luò)斷開的話, 那么send函數(shù)也返回SOCKET_ERROR要注意send函數(shù)把buf中的數(shù)據(jù)成功copy到s的發(fā)送緩沖的剩余空間里后 它就返回了,但是此時(shí)這些數(shù)據(jù)并不一定馬上被傳到連接的另一端。如果協(xié) 議在后續(xù)的傳送過程中出現(xiàn)網(wǎng)絡(luò)錯(cuò)誤的話,那么下一個(gè)Socket函數(shù)就會(huì)返回SOCKET_ERROR每一個(gè)除send外的Socket函數(shù)在執(zhí)行的最開始總要 先等待套接字的發(fā)送緩沖中的數(shù)據(jù)被協(xié)議傳送完畢才能繼續(xù),如果在等待時(shí)出現(xiàn)網(wǎng)絡(luò)錯(cuò)誤,那么該 Socket函數(shù)就返回SOCKET_ERROR注意:在Unix系統(tǒng)下,
14、如果send在等待協(xié)議傳送數(shù)據(jù)時(shí)網(wǎng)絡(luò)斷開的話,調(diào)用send的進(jìn)程會(huì)接收到一個(gè)SIGPIPE信號(hào),進(jìn)程對該信號(hào)的默認(rèn)處理是進(jìn) 隹終止。通過測試發(fā)現(xiàn),異步socket的send函數(shù)在網(wǎng)絡(luò)剛剛斷開時(shí)還能發(fā)送返回相 應(yīng)的字節(jié)數(shù),同時(shí)使用select檢測也是可寫的,但是過幾秒鐘之后,再send 就會(huì)出錯(cuò)了,返回-1。select也不能檢測出可寫了。nt recv ( SOCKET, char FAR *buf, int len, int flags );不論是客戶還是服務(wù)器應(yīng)用程序都用 recv函數(shù)從TCP!接的另一端接收數(shù) 據(jù)。該函數(shù)的第一個(gè)參數(shù)指定接收端套接字描述符;第二個(gè)參數(shù)指明一個(gè)緩沖區(qū),該緩沖
15、區(qū)用來存放recv函數(shù)接收到的數(shù)據(jù);第三個(gè)參數(shù)指明buf的長度;第四個(gè)參數(shù)一般置00這里只描述同步Socket的recv函數(shù)的執(zhí)行流程。當(dāng)應(yīng)用程序調(diào)用 recv函 數(shù)時(shí),recv先等待s的發(fā)送緩沖中的數(shù)據(jù)被協(xié)議傳送完畢,如果協(xié)議在傳 送s的發(fā)送緩沖中的數(shù)據(jù)時(shí)出現(xiàn)網(wǎng)絡(luò)錯(cuò)誤,那么recv函數(shù)返回 SOCKET_ERRORI s的發(fā)送緩沖中沒有數(shù)據(jù)或者數(shù)據(jù)被協(xié)議成功發(fā)送完畢 后,recv先檢查套接字s的接收緩沖區(qū),如果s接收緩沖區(qū)中沒有數(shù)據(jù)或 者協(xié)議正在接收數(shù)據(jù),那么recv就一直等待,只到協(xié)議把數(shù)據(jù)接收完畢。當(dāng)協(xié)議把數(shù)據(jù)接收完畢,recv函數(shù)就把s的接收緩沖中的數(shù)據(jù)copy到buf 中(注意協(xié)議接
16、收到的數(shù)據(jù)可能大于buf的長度,所以 在這種情況下要調(diào)用幾次recv函數(shù)才能把s的接收緩沖中的數(shù)據(jù)copy完。recv函數(shù)僅僅是 copy數(shù)據(jù),真正的接收數(shù)據(jù)是協(xié)議來完成的),recv函數(shù)返回其實(shí)際copy 的字節(jié)數(shù)。如果recv在copy時(shí)出錯(cuò),那么它返回SOCKET_ERROR果recv 函數(shù)在等待協(xié)議接收數(shù)據(jù)時(shí)網(wǎng)絡(luò)中斷了,那么它返回 00注意:在Unix系統(tǒng)下,如果recv函數(shù)在等待協(xié)議接收數(shù)據(jù)時(shí)網(wǎng)絡(luò)斷開了, 那么調(diào)用recv的進(jìn)程會(huì)接收到一個(gè)SIGPIPE信號(hào),進(jìn)程對該信號(hào)的默認(rèn)處 理是進(jìn)程終止。int close (int sockfd );獲得與套接口關(guān)聯(lián)的協(xié)議地址#include
17、 /*獲得與套接口關(guān)聯(lián)的本地協(xié)議地址*參數(shù):sockfd - 套接口描述字localaddr -輸出參數(shù),返回與套接口關(guān)聯(lián)的本地協(xié)議地址addrlen - 輸出參數(shù),返回套接字地址結(jié)構(gòu)體的大小*返回:成功-0 ,失敗-1*/int getsockname (int sockfd , struct sockaddr *localaddr , socklen_t*addrlen );/*獲得與套接口關(guān)聯(lián)的遠(yuǎn)端協(xié)議地址*參數(shù):sockfd - 套接口描述字peeraddr -輸出參數(shù),返回與套接口關(guān)聯(lián)的遠(yuǎn)端協(xié)議地址addrlen - 輸出參數(shù),返回套接字地址結(jié)構(gòu)體的大小*返回:成功-0 ,失敗-1*
18、/int getpeername (int sockfd , struct sockaddr *peeraddr, socklen_t*addrlen );I/O復(fù)用函數(shù)#include #include /*檢查是否收到關(guān)心的套接字事件*參數(shù):maxfdp1 -關(guān)心的最大套接字+ 1readset - 關(guān)心是否可讀的套接字的集合,NULL代表不關(guān)心writeset -關(guān)心是否可寫的套接字的集合,NULL弋表不關(guān)心exceptset -關(guān)心是否有異常的套接字的集合,NULL代表不關(guān)心timeout - NULL永遠(yuǎn)等下去;秒數(shù)和毫秒數(shù)都為 0:不等待;指定 佰:等待一段時(shí)間*返回:成功-就緒套
19、接字的數(shù)目,超時(shí)-0 ,失敗-1*/int select (int maxfdpl , fd_set *readset , fd_set * writeset , fd_set*exceptset , const struct timeval * timeout );/*用來設(shè)置關(guān)心套接字集合的函數(shù) */void FD_ZERQfd_set *fdset );void FD_SETint fd , fd_set *fdset );void FD_CLRint fd , fd_set *fdset );int FD_ISSET(int fd , fd_set *fdset );發(fā)送FIN函數(shù)#i
20、nclude /*發(fā)送FIN,關(guān)閉連接*參數(shù):sockfd - 要關(guān)閉連接的socket描述字howto -關(guān)閉連接方式:SHUT_RD -關(guān)閉連接的讀這一半,不再接 收數(shù)據(jù),丟棄接收緩沖區(qū)中的未接收數(shù)據(jù);SHUT_WR關(guān)閉連接的寫這一半,即半關(guān)閉狀態(tài),發(fā)送緩沖區(qū)中將被發(fā)送完;SHUT_RDWR連接的讀寫都被關(guān)閉*返回:成功-0 ,失敗-1*/int shutdown( int sockfd , int howto);套接口選項(xiàng)函數(shù)注:標(biāo)志表明了該選項(xiàng)是否為啟用或禁止類型,0 -禁止,非0 -啟用級(jí)別選項(xiàng)名getset說明SOL_SOCKETSO_BROADCAST*開啟或禁止進(jìn)程發(fā)送廣播消息
21、的能力,只適用于UDP套接口,如果目的地址個(gè)廣播地址且本套接口選項(xiàng)沒有設(shè)置,則返回EACCES錯(cuò)誤SO_DEBUG*只適用于TCP套接口,對套接口發(fā)送和接受的報(bào)文保留詳細(xì)跟蹤信息,可使月程序進(jìn)行查看SO_DONTROUTE*對發(fā)出的報(bào)文不查詢路由表,直接通過目的地址的網(wǎng)絡(luò)地址確定本地接口后發(fā)如果無法由目的地址確定(即不在一個(gè)點(diǎn)到點(diǎn)鏈路或共享網(wǎng)絡(luò) ),則返回ENETUNREACH 錯(cuò)誤SO_ERROR*當(dāng)socket發(fā)生錯(cuò)誤時(shí),可以同訪問SO_ERROR套接口選項(xiàng)獲取該錯(cuò)誤值 (so_error中),讀取后so_error被復(fù)位為0,該錯(cuò)誤被稱為待處理錯(cuò)誤 (penerror)SO_KEEPAL
22、IVE*適用于TCP套接口,啟用或禁止 2小時(shí)未收到任一方向上的數(shù)據(jù)則發(fā)送?;顖?bào)文SO_LINGER*指定close函數(shù)對面向連接協(xié)議(如TCP和SCTP)如何操作,缺省操作是clc數(shù)立即返回,如果發(fā)送緩沖區(qū)有數(shù)據(jù),則嘗試發(fā)送給對端。SO_LINGER 選工改變此設(shè)置。如果l_onoff為0,使用缺省設(shè)置。如果l_onoff為非0且l_linger為0 ,則丟棄發(fā)送緩沖區(qū)中的數(shù)據(jù)并發(fā)送一個(gè)給對端,沒有通常的四次握手終止連接如果l_onoff為非0且l_linger為非0,則當(dāng)套接口關(guān)閉時(shí)核將拖延一段時(shí)間果發(fā)送緩沖區(qū)有數(shù)據(jù),進(jìn)程將被阻塞,知道所有數(shù)據(jù)發(fā)送玩且均被對方確認(rèn)或時(shí)間到。如果套接口為非阻
23、塞型,那么它將不等待close完成,即使l_linge0 oSO_OOBINLINE*開啟時(shí),帶外數(shù)據(jù)將被留在正常的輸入隊(duì)列中。這種情況下接收函數(shù)的 MSG_標(biāo)志不能用來讀帶外數(shù)據(jù)。SO_RCVBUF*改變接收緩沖區(qū)的缺省大小,對于TCP客戶端的接受緩沖區(qū)大小必須在調(diào)connect之前設(shè)置;對于TCP服務(wù)器端必須在調(diào)用listen之前給套接口設(shè)置建的已連接套接口從監(jiān)聽套接口繼承緩沖區(qū)大小。TCP緩沖區(qū)大小至少應(yīng)是相接的MSS值的四倍,且為 MSS值的偶數(shù)倍。SO_SNDBUF*改變發(fā)送緩沖區(qū)的缺省大小,同上SO_RCVLOWAT*改變接收低潮標(biāo)記,即select返回套接口接收緩沖區(qū)可讀所需的數(shù)
24、據(jù)量,對于UDP、SCTP套接口,缺省為 1SO_SNDLOWAT*改變發(fā)送低潮標(biāo)記,即 select返回套接口發(fā)送緩沖區(qū)可寫所需的可用空間SO_RCVTIMEO*改變套接口接收的超時(shí)值,時(shí)間為0代表不超時(shí)SO_SNDTIMEO*改變套接口發(fā)送的超時(shí)值,時(shí)間為0代表不超時(shí)SO_REUSEADDR*允許啟動(dòng)一個(gè)監(jiān)聽服務(wù)器并捆綁眾所周知端口,即使以前在此端口上建立的連存在;允許完全重復(fù)的捆綁:即當(dāng)一個(gè)IP地址和端口已綁定到某個(gè)套接口上時(shí)果傳輸協(xié)議支持,同樣的IP和端口還可以捆綁到另一個(gè)套接口上,一般來說僅UDP套接口。SO_REUSEPORT*允許完全重復(fù)的捆綁(如上詳述),不過只有在想要捆綁同一
25、 IP地址和端口的個(gè)套接口都啟用本選項(xiàng)才行;如果被捆綁的IP地址是一個(gè)多播地址,那么SO_REUSEADDR 和 SO_REUSEPORT 被認(rèn)為等效SO_TYPE*獲得套接口的類型,如 SOCK_STREAM 或SOCK_DGRAMSO_USELOOPBACK*只適用于路由域套接口,開啟時(shí),相應(yīng)套接口將接收在其上發(fā)送的任何數(shù)據(jù)報(bào)份拷貝#include /*獲得套接口選項(xiàng)* 參數(shù):sockfd - 套接字,level - 級(jí)別,optname -選項(xiàng)名,optval -值,optlen - 值的大小*返回:0 - 成功,-1 -失敗*/int getsockopt (int sockfd , int level , int optname, void *optval ,socklen_t * optlen );/*設(shè)置套接口選項(xiàng)* 參數(shù):sockfd - 套接字,level - 級(jí)別,optname -選項(xiàng)名,optval -值,optlen - 值的大小*返回:0 - 成功,-1 -失敗*/int setsockopt (int sockfd , int level , int optname,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度綠色建筑節(jié)能改造項(xiàng)目合同索賠處理協(xié)議
- 2025年度花藝師花卉種植基地花卉新品種引進(jìn)合同
- 2025年國際貨運(yùn)代理服務(wù)及進(jìn)出口貿(mào)易合同
- 現(xiàn)代簡約風(fēng)格在商業(yè)空間的應(yīng)用研究
- 新北師大版四年級(jí)數(shù)學(xué)上冊角的度量1聽評課記錄
- 2025年度新型城鎮(zhèn)化道路施工勞務(wù)分包合同范本
- 2025年度建筑渣土運(yùn)輸環(huán)保達(dá)標(biāo)服務(wù)合同范本
- 生物質(zhì)能源的技術(shù)創(chuàng)新與政策支持路徑
- 游戲內(nèi)的激勵(lì)機(jī)制如何推動(dòng)玩家消費(fèi)和產(chǎn)品盈利
- 2025年度裝配式建筑構(gòu)件生產(chǎn)與施工包工合同
- 【高中語文】《氓》課件++統(tǒng)編版+高中語文選擇性必修下冊
- T-WAPIA 052.3-2023 無線局域網(wǎng)設(shè)備技術(shù)規(guī)范 第3部分:接入點(diǎn)和控制器
- 第4課+中古時(shí)期的亞洲(教學(xué)設(shè)計(jì))-【中職專用】《世界歷史》(高教版2023基礎(chǔ)模塊)
- 金點(diǎn)子活動(dòng)總結(jié)匯報(bào)
- 運(yùn)動(dòng)技能學(xué)習(xí)與控制完整
- 原料驗(yàn)收標(biāo)準(zhǔn)知識(shí)培訓(xùn)課件
- Unit4MyfamilyStorytime(課件)人教新起點(diǎn)英語三年級(jí)下冊
- 物流運(yùn)作管理-需求預(yù)測
- 《電機(jī)與電氣控制(第三版)習(xí)題冊》 習(xí)題答案
- 財(cái)務(wù)管理專業(yè)《生產(chǎn)實(shí)習(xí)》教學(xué)大綱
- 鋼桁梁頂推施工方案
評論
0/150
提交評論